【发布时间】:2021-11-03 02:05:39
【问题描述】:
我正在尝试从链接列表中获取多个页面源。我的想法是使用 webdriver 打开链接,将页面源保存在变量中,然后返回继续下一个链接。但由于某种原因,python 告诉我一个元素没有附加到页面文档。有什么解决方案吗?提前致谢!
browserFut = webdriver.Chrome(PATH)
browserFut.get(link)
page_sources = []
links = browserFut.find_element_by_xpath('//div[@class="dml-page-loader dml-page-loader--pb"]').find_elements_by_tag_name('a')
for link in links:
link.click()
page_sources += [browserFut.page_source]
browserFut.back()
time.sleep(1)
【问题讨论】:
-
当第一个
link.click()被触发时会发生什么,它会将您重定向到任何地方吗? -
使用该代码,驱动程序完成一个循环,我的意思是,它打开第一个链接,保存它然后返回。之后它会发回我之前写的消息
-
是的,我知道原因元素在第二个循环中变得陈旧。
-
查看下面的答案,如果您遇到任何问题,请告诉我。
标签: python selenium selenium-webdriver beautifulsoup