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)
下面是我得到的错误。
Traceback(最后一次调用(:文件";C: \Users\admin\Desktop\pyhton\index.py";,第14行,indriver.find_element_by_xpath("//input[@placeholder='Password']"(.send_keys(Password(AttributeError:"WebDriver"对象没有属性"find_element_by_xpath">
现在正在获取此错误。
追踪(最近一次通话(:文件";C: \Users\admin\Desktop\pyhton\index.py";,第13行,indriver.find_element(By.XPATH,"//input[@placeholder='Password']"(.send_keys(Password(文件";C: \Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py";,第856行,在find_element中return self.execute(Command.FIND_ELEMENT{文件";C: \Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py";,第429行,执行中self.error_handler.check_response(响应(文件";C: \Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py";,第243行,在check_response中引发exception_class(消息、屏幕、堆栈(selenium.com.mon.exceptions.NoSuchElementException:消息:没有这样的元素:无法定位元素:{"方法">
您可能正在使用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)
试试这个:
from selenium.webdriver.common.by import By
driver.find_element(By.XPATH, "//input[@placeholder='Password']").send_keys(PASSWORD)