使用Selenium将列表上的循环与下一页一起清除



使用硒清除下一页问题

有点类似althogh我不想让它与bs4 一起使用变得更复杂

我想在每个页面上抓取所有10个标题(pdf链接(。以下是引发StaleElementReferenceException的代码:消息:陈旧元素引用:元素未附加到页面文档(位于i.click()(

driver.find_element_by_css_selector('button[class="btn btn-primary"][type="submit"]').click()    

for j in range(10):
pdfs = driver.find_elements_by_css_selector(".title a")
if j < 10:
nextpg = driver.find_element_by_css_selector(".tx-pagebrowse-page button")
pdfs = driver.find_elements_by_css_selector(".title a")
for i in pdfs:
i.click()
time.sleep(5)
if j < 10:
nextpg.click()
else:
break

下面显示了第一页是一个标题正确的type=list列表

pdfs = driver.find_elements_by_css_selector(".title a")
print(type(pdfs))
for my_pdf in pdfs:
print(my_pdf.get_attribute('innerHTML'))
<class 'list'>
dfhgadr asfdgsd
sDF SDF 
SDFSDF sdf
SDF DSfdf
SDFD sdf
SDFSdf fdf
zewr4
sHSDFG 
RSZJRT
dhff fgf

代替pdfs[[i]].click((您可以尝试如下:

i.click()

最新更新