Итак, я работал над Python WebScraper, который сканирует веб-сайт в поисках данных (например, о победах и поражениях) из нашего FIFA ProClub. У меня он работает на стороннем веб-сайте только с BeautifulSoup и запросами, но теперь я борюсь с сайтом www.ea.com/de-de/games/fifa/fifa-20/pro-clubs/rankings не только потому, что таблица занимает некоторое время для загрузки (думал, что исправил это с помощью «ждать загрузки элемента»), но также и с исходным кодом. По-видимому, код не отображается полностью при загрузке чистого исходного кода, как раз тогда, когда я проверяю указанный элемент c, который я хочу очистить. Я также заметил, что загрузка кода при проверке занимает некоторое время. Думаю, часть проблемы заключается в элементе «ea-elements-loader», в котором размещаются нужные мне div, но я не совсем понимаю, что они там сделали . Basi c очистка не моя проблема, и я знаю, что селен может быть излишним.
Подводя итог, основная проблема заключается в том, что при печати кода класс div, который я искал, отсутствует , даже сложно, это проявляется при использовании инструмента проверки chrome.
Я действительно застрял на этом этапе, код ниже
from selenium import webdriver
from bs4 import BeautifulSoup
import time
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
options = webdriver.ChromeOptions()
options.add_argument("start-maximized")
options.add_experimental_option("excludeSwitches", ["enable-automation"])
options.add_experimental_option('useAutomationExtension', False)
DRIVER_PATH = './chromedriver.exe'
driver = webdriver.Chrome(options=options, executable_path=DRIVER_PATH)
driver.get("https://www.ea.com/de-de/games/fifa/fifa-20/pro-clubs/rankings")
#edited
time.sleep(5)
print(driver.page_source)
soup = BeautifulSoup(driver.page_source, 'html.parser')
code_soup = soup.find_all(("div", {"class": "eapl-proclub-table__data"}))
driver.quit()