Пытаюсь использовать Красивый суп для очистки данных с веб-сайта, но он возвращает только пустые списки из вложенных файлов

#python #html #web-scraping #beautifulsoup

Вопрос:

Я использую beautiful soup, чтобы попытаться получить данные с веб-сайта расписания лиги Overwatch с помощью beautiful soup, однако, несмотря на всю документацию, в которой говорится, что bs4 способен находить вложенные разделы, если у меня есть их класс, он возвращает только пустой список.

вот URL-адрес: https://overwatchleague.com/en-us/schedule?stage=regular_seasonamp;week=1

вот что я пытаюсь получить:

 bs = BeautifulSoup(req.text, "html.parser")
matches = bs.find_all("div", class_="schedule-boardstyles__ContainerCards-j4x5cc-8 jcvNlt")
 

чтобы в конечном итоге иметь возможность просматривать в нем divs и извлекать из него данные о совпадениях. Однако это не работает и только возвращает a [] , есть ли что-то , что я делаю не так?

Ответ №1:

Когда страница загружается, на ней часто запускаются некоторые сценарии для заполнения информации.

Beautifulsoup-это всего лишь синтаксический анализатор, который не может отображать страницу.

Вам понадобится что-то вроде selenium для визуализации страницы, прежде чем использовать beautifulsoup для поиска элементов

Ответ №2:

Это не работает, так request как получает html-код до полной загрузки страницы. Я не думаю, что есть способ заставить это подождать. Вы могли бы попробовать сделать это с помощью селена