【发布时间】:2022-01-05 17:19:54
【问题描述】:
这是我第一次使用 selenium 进行动态分页抓取。 我想关注website。基本上我的想法是我想抓取所有表的 118 页表并存储在一些 json 中。 我试图获得第一张桌子,它打印得很好,但是当我尝试转到下一个按钮时,它抛出异常
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.StaleElementReferenceException: Message: The element reference of <tr class="even"> is stale; either the element is no longer attached to the DOM, it is not in the current frame context, or the document has been refreshed
这是我目前尝试过的一小部分代码
driver = webdriver.Firefox(executable_path=GeckoDriverManager().install())
driver.get("https://merolagani.com/Floorsheet.aspx")
for z in (driver.find_elements(By.XPATH, '//tbody/tr')):
table_data = z.find_elements_by_tag_name('td')
for td in table_data:
print(td.text)
time.sleep(1)
z.find_element(By.XPATH, "(//a[@title='Next Page'])[2]").click()
这是我第一次抓取动态分页,任何帮助都会很有用,谢谢。
【问题讨论】:
-
我可以帮助你,但我看到你不接受答案。所以,我很抱歉,但是......
-
很抱歉,这些答案与我要求的解决方案不符,但我总是支持答案
-
谢谢你,我现在解决了,你能发布你的答案吗?
标签: python selenium selenium-webdriver web-scraping