【发布时间】:2016-10-27 00:15:17
【问题描述】:
我正在尝试使用Selenium 模块在我的大学邮件中输入用户名和密码。这是我试图定位的 id 的属性值:
<input id="ContentPlaceHolder1_UsernameTextBox" name="username" tabindex="1" placeholder="FAU Net ID" value="" autocomplete="false" type="text">
这是我试图在我的程序中找到它的方式:
userElem = browser.find_element_by_id('ContentPlaceHolder1_UsernameTextBox')
但这是我遇到的错误:
例外-:
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
emailElem = browser.find_element_by_id('ContentPlaceHolder1_UsernameTextBox')
File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 269, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 752, in find_element
'value': value})['value']
File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute
self.error_handler.check_response(response)
File "C:\Python\Python35\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: [id="ContentPlaceHolder1_UsernameTextBox"]
谢谢,任何帮助将不胜感激。
编辑:
此页面仅供参考
【问题讨论】:
-
不看页面很难判断。您可以使用 DevTools、Firebug 等确保页面上存在该元素
-
Selenium 不是也有
find_element_by_name()功能吗?你也可以试试那个,如果不使用xpath