Я не могу разобраться в этом, поскольку я не знаком ни с чем, связанным с веб-сайтом, и сама панель управления займет возраст для очистки вручную.
Это то, что у меня есть на данный момент, но я получаю ошибки тайм-аута:
Код: Выделить всё
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
chrome_options = Options()
chrome_options.add_argument("--headless")
chrome_options.add_argument("--disable-gpu")
chromedriver_path = "~/bin/chromedriver"
url = "https://www.transport.nsw.gov.au/data-and-research/drives-reporting-portal/registration-snapshot-report"
powerbi_iframe_selector = "iframe.mapbox"
report_page_selector = ".reportPage"
service = Service(chromedriver_path)
driver = webdriver.Chrome(service=service, options=chrome_options)
driver.get(url)
iframe = WebDriverWait(driver, 20).until(
EC.visibility_of_element_located((By.CSS_SELECTOR, powerbi_iframe_selector))
)
driver.switch_to.frame(iframe)
report_page = WebDriverWait(driver, 20).until(
EC.visibility_of_element_located((By.CSS_SELECTOR, report_page_selector))
)
time.sleep(10)
report_contents = report_page.get_attribute("innerHTML")
print(report_contents)
driver.quit()
selenium.common.Exceptions.TimeoutException: Сообщение:
Stacktrace:
0 chromedriver 0x000000010689b598 chromedriver + 4973976
1 chromedriver 0x0000000106892913 chromedriver + 4938003
2 chromedriver
Я также пробовал использовать CSSSELECTOR в соответствии с некоторыми советами здесь, но это не помогло.
Сможет ли кто-нибудь помочь мне с этой серьезной проблемой?
Я пробовал использовать селен, который является рекомендуемым методом, но получаю множество ошибок тайм-аута, с которыми мне приходилось сталкиваться. посмотрел в Интернете, как решить, но понятия не имею.
Использовал селектор CSS, не помогло:
report_page = WebDriverWait(driver, 20).until(
EC .visibility_of_element_located((By.CSS_SELECTOR, report_page_selector))
)
Подробнее здесь: https://stackoverflow.com/questions/763 ... ith-python