AttributeError: 'NoneType' object has no attribute 'send_keys' 问题
在学习 selenium的时候,网页可以创建打开,但一直无法定位定位,我已经把chromedriver.exe重新下载并放到指定位置,且在程序中也指定的位置,但无论怎么操作都不能定位和后续打开其他网页
from selenium import webdriver
import time
e=r"C:\Program Files\Google\Chrome\Application\chromedriver.exe"
driver=webdriver.Chrome(executable_path=e)#指定一下driver
url = 'http://www.baidu.com'
driver.get(url)
driver.find_element_by_xpath('//*[@id="kw"]').send_keys('python3')
driver.set_window_size(800,600)
time.sleep(5)
driver.maximize_window()
driver.maximize_window() # 最大化浏览器窗口
AttributeError: 'NoneType' object has no attribute 'send_keys'
最新的selenium版本已经不支持find_element_by_xpath这种写法了
需要使用By的方式:
首先添加引用:
from selenium.webdriver.common.by import By
然后定位元素那一行修改为:
driver.find_element(By.XPATH, '//*[@id="kw"]').send_keys('python3')
好用就好,不用谢,太客气了
对了,好些培训文档已经是很多年前写的了。内容难免不靠谱
添加一下等待时间
driver.get(url)
time.sleep(3)
driver.find_element_by_xpath('//*[@id="kw"]').send_keys('python3')
driver.find_element_by_xpath('//*[@id="kw"]')的值是None