selenium中遇到这种报错,怎么解决

在写selenium自动化脚本的时候,运行代码通常会遇到以下错误:

Traceback (most recent call last):
File "D:/selenium/xuehu.py", line 23, in <module>
text= browser.find_element_by_class_name("user-name").text
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 426, in find_element_by_class_name
return self.find_element(by=By.CLASS_NAME, value=name)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 784, in find_element
'value': value})['value']
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 249, in execute
self.error_handler.check_response(response)
File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 193, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"class name","selector":"user-name"}
(Session info: chrome=51.0.2704.106)
(Driver info: chromedriver=2.23.409699 (49b0fa931cda1caad0ae15b7d1b68004acd05129),platform=Windows NT 6.3.9600 x86_64)

 

源代码如下:

解决方法:

其实很简单,在执行代码的时候,页面未加载出来,便执行这句:

text= browser.find_element_by_class_name("user-name").text
未找到该元素,肯定会报错,所以在前面加一个等待时间,便可解决。
posted @ 2018-03-22 16:30  海盗哥  阅读(546)  评论(0编辑  收藏  举报