Я написал скрипт на python в сочетании с селеном для очистки различных 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)
tr.IecExtended ul
, этот элемент является следующим родственным элементом дляtr.Iec