我用 python 结合 selenium 编写了一个脚本,用于抓取点击不同数字时生成的不同 pdf
链接,如下所示在位于网页表格内的 110015710
、110015670
等中。
我的脚本可以点击这些链接,显示 pdf
文件,但只能解析其中的 5 个。
我怎样才能得到它们?
到目前为止我已经尝试过:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
link = "replace_with_above_link"
driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10)
driver.get(link)
[driver.execute_script("arguments[0].click();",item) for item in wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR,"tr.Iec")))]
for elem in wait.until(EC.visibility_of_all_elements_located((By.CSS_SELECTOR,".IecAttachments li a[href$='.pdf']"))):
print(elem.get_attribute("href"))
driver.quit()
最佳答案
当您单击该元素时,它将执行 XHR 来请求 pdf 链接,并在每次单击后添加延迟。
for item in wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR,"tr.Iec"))):
driver.execute_script("arguments[0].click();",item)
time.sleep(1)
关于python - 无法从网页获取表格内的所有 pdf 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53900119/