gpt4 book ai didi

python - 使用 Selenium + Python 循环访问链接并从结果页面中抓取数据

转载 作者:太空宇宙 更新时间:2023-11-04 04:20:26 25 4
gpt4 key购买 nike

<分区>

我是 Selenium 的新手,需要抓取一个包含结构完全如下的链接列表的网站:

<a class="unique" href="...">
<i class="something"></i>
"Text - "
<span class="something">Text</span>
</a>
<a class="unique" href="...">
<i class="something"></i>
"Text - "
<span class="something">Text</span>
</a>
...
...

我需要在循环中单击此链接列表并从结果页面中抓取数据。到目前为止我所做的是:

lists = browser.find_elements_by_xpath("//a[@class='unique']")
for lis in lists:
print(lis.text)
lis.click()
time.sleep(4)
# Scrape data from this page (works fine).
browser.back()
time.sleep(4)

对于第一个循环它工作正常但是当第二个循环到达时

print(lis.text)

它抛出一个错误说:

StaleElementReferenceException: Message: stale element reference: element is not attached to the page document

我试过 print (lists) 并且它给出了所有链接元素的列表,所以工作正常。当浏览器返回到上一页时,就会出现问题。我尝试延长时间并使用 browser.get(...) 而不是 browser.back() 但错误仍然存​​在。我不明白为什么它不会打印 lis.text 因为列表仍然包含所有元素的列表。任何帮助将不胜感激。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com