【发布时间】:2017-08-01 23:12:52
【问题描述】:
所以我开始掌握 while 循环的窍门,但是当在 selenium 代码上使用 while 循环时,我做不到。
我几乎尝试将一个任务复制 10 次,代码如下所示
Main.py
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get('https://orlando.craigslist.org/search/cta')
owl = driver.find_element_by_xpath('//*[@id="sortable-results"]/ul/li/p/a')
res = 1
while res < 10:
owl2 = owl.click()
driver.find_element_by_xpath('/html/body/section/header/nav/ul/li[3]/p/a').click()
res = res + 1
这是错误
Traceback(最近一次调用最后一次): 文件“main.py”,第 12 行,在 owl2 = owl.click() 文件“/Library/Python/2.7/site-packages/selenium/webdriver/remote/webelement.py”, 第 77 行,点击 self._execute(Command.CLICK_ELEMENT) 文件“/Library/Python/2.7/site-packages/selenium/webdriver/remote/webelement.py”, 第 491 行,在 _execute return self._parent.execute(命令,参数) 文件“/Library/Python/2.7/site-packages/selenium/webdriver/remote/webdriver.py”, 第 238 行,执行中 self.error_handler.check_response(响应) 文件“/Library/Python/2.7/site-packages/selenium/webdriver/remote/errorhandler.py”, 第 193 行,在 check_response 中 引发异常类(消息、屏幕、堆栈跟踪) selenium.common.exceptions.StaleElementReferenceException:消息:过时的元素引用:元素未附加到页面 文档 (会话信息:chrome=56.0.2924.87) (驱动程序信息:chromedriver=2.27.440174(e97a722caafc2d3a8b807ee115bfb307f7d2cfd9),平台=Mac OS X 10.11.2 x86_64)
有什么建议吗?
【问题讨论】:
标签: python selenium selenium-webdriver