Python Selenium的新版本。
我试图创建一个脚本登录到我的家庭路由器,并按下按钮重新启动。
运行到错误时,当尝试登录到路由器时,可以在这里介绍一下我的错误。
下面是代码,并附加了.屏幕截图
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
driver_service = Service(executable_path="C:\Program Files (x86)\chromedriver.exe")
driver = webdriver.Chrome(service=driver_service)
PASSWORD = 'testtes'
login_page = 'http://192.168.2.1/login.html'
driver.get(login_page)
driver.find_element_by_xpath("//input[@placeholder='Password']").send_keys(PASSWORD)下面是我正在犯的错误。
追溯(最近一次调用):driver.find_element_by_xpath("//input@placeholder='Password'").send_keys(PASSWORD) AttributeError中的文件"C:\Users\admin\Desktop\pyhton\index.py",第14行:'WebDriver‘对象没有属性'find_element_by_xpath’
现在就得到这个错误。
回溯(最近一次调用):文件"C:\Users\admin\Desktop\pyhton\index.py",第13行,在driver.find_element(By.XPATH,By.XPATH文件"C:\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py",第856行),find_element返回self.execute(Command.FIND_ELEMENT,{ File "C:\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py",第429行,在执行"C:\Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py",(响应)文件self.error_handler.check_response第243行中,check_response引发exception_class(消息、屏幕、堆栈跟踪)消息:没有这样的元素:无法定位元素:{“方法”:“xpath”,“选择器”:“//input@占位符=‘密码’”}
发布于 2022-10-20 21:40:16
可能您正在使用Selenium 4。如果是这样,则Selenium 4不支持find_element_by_xpath和所有其他find_element_by_*方法,您必须使用新的语法并添加必要的导入,如下所示:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
driver_service = Service(executable_path="C:\Program Files (x86)\chromedriver.exe")
driver = webdriver.Chrome(service=driver_service)
PASSWORD = 'testtes'
login_page = 'http://192.168.2.1/login.html'
driver.get(login_page)
driver.find_element(By.XPATH, "//input[@placeholder='Password']").send_keys(PASSWORD)发布于 2022-10-20 21:42:25
试试这个:
from selenium.webdriver.common.by import By
driver.find_element(By.XPATH, "//input[@placeholder='Password']").send_keys(PASSWORD)https://stackoverflow.com/questions/74146544
复制相似问题