Код: Выделить всё
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException, NoSuchElementException
import time
service = Service("C:\\Users\\sddd\\Downloads\\chromedriver-win64\\chromedriver.exe")
driver = webdriver.Chrome(service=service)
driver.get("https://oddspedia.com/football")
try:
# Accept cookies
cookie_button = WebDriverWait(driver, 5).until(
EC.element_to_be_clickable((By.XPATH, '//button[@class="cookie-popup__btn"]'))
)
cookie_button.click()
print("Cookies accepted.")
while True:
try:
show_more_button = WebDriverWait(driver, 5).until(
EC.visibility_of_element_located((By.XPATH, '//div[@class="ml-show-more-btn"]/button'))
)
show_more_button.click()
print("Clicked 'Show more' button.")
WebDriverWait(driver, 2).until(
EC.presence_of_element_located((By.CLASS_NAME, 'loader'))
)
WebDriverWait(driver, 10).until(
EC.invisibility_of_element_located((By.CLASS_NAME, 'loader'))
)
time.sleep(1) # Optional: slight pause to ensure content is ready
print("Loading completed, ready for next click.")
except TimeoutException:
print("No more 'Show more' button or page loading timeout.")
break
except NoSuchElementException:
print("Element not found.")
finally:
driver.quit()
Подробнее здесь: https://stackoverflow.com/questions/791 ... y-before-n