【发布时间】:2019-04-04 17:58:12
【问题描述】:
我正在用 Python 编写一个程序来收集网站的链接。代码是:
links = driver.find_elements_by_xpath('//*[@href]')
for link in links:
print(link.get_attribute('href'))
time.sleep(1)
我在一些网站上试过,效果很好。问题是当我在特定站点(www.ifood.com.br)中使用时。它收集一些链接,然后返回一些错误。我是 Python 的初学者,所以我不知道它们是什么意思。拜托,我需要一些帮助。
代码结果:
https://d1jgln4w9al398.cloudfront.net/imagens/ce/wl/www.ifood.com.br/favicon.icohttps://d1jgln4w9al398.cloudfront.net/site/2.1.238-20181023.22/css/main.csshttps://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800https://www.ifood.com.br/
Traceback(最近一次调用最后):文件“C:\Users\jorda\Desktop\Python - Projetos\digitar ifood.py”,第 32 行,在 print(link.get_attribute('href')) 文件“C :\Users\jorda\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\remote\webelement.py",第 143 行,在 get_attribute resp = self._execute(Command.GET_ELEMENT_ATTRIBUTE, {'name': name}) 文件“C:\Users\jorda\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\remote\webelement.py”,第 633 行,在_execute return self._parent.execute(command, params) File "C:\Users\jorda\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\remote\webdriver.py",第 321 行,在执行 self.error_handler.check_response(response) 文件“C:\Users\jorda\AppData\Local\Programs\Python\Python37-32\lib\site-packages\selenium\webdriver\remote\errorhandler.py” ,第 242 行,在 check_response 中引发 exception_class(message, screen, stacktrace) selenium.common.exceptions.StaleElementReferenceExc eption:消息:过时的元素引用:元素未附加到页面文档(会话信息:chrome = 70.0.3538.77)(驱动程序信息:chromedriver = 2.42.591088(7b2b2dca23cca0862f674758c9a3933e685c27d5),平台=Windows NT 10.0.17134 x86_64
【问题讨论】:
标签: python python-3.x selenium selenium-webdriver