Почему BeautifulSoup не может найти класс HTML? - PullRequest
0 голосов
/ 08 июня 2019

Я пытаюсь очистить этот сайт , используя запросы и BeautifulSoup в python:

Я хочу получить всю информацию в теге article с class = "ficha-jogo". Когда я запускаю код ниже, x это пустой список.

url = "https://globoesporte.globo.com/rs/futebol/brasileirao-serie-a/jogo/25-05-2019/gremio-atletico-mg.ghtml"
r = requests.get(url)     
soup = BeautifulSoup(r.content, "lxml")
x = soup.select(".ficha-jogo")
print(x)

Я ожидал, что он вернет все теги, содержащиеся в теге article с class = "ficha-jogo".

1 Ответ

1 голос
/ 08 июня 2019

Эта ссылка на сайт представляет собой динамический запрос рендеринга article данных. Вам следует попробовать automation selenium библиотеку. это позволяет вам удалять dynamic rendering request(js or ajax) данные страницы.

from bs4 import BeautifulSoup
from selenium import webdriver

browser = webdriver.Chrome()
url = "https://globoesporte.globo.com/rs/futebol/brasileirao-serie-a/jogo/25-05-2019/gremio-atletico-mg.ghtml"

browser.get(url)
soup = BeautifulSoup(browser.page_source, 'html.parser')

article = soup.find("article",{"class":"ficha-jogo"})
print(article.text)

O / P:

GREPaulo Victor 1GOLLeonardo 6LADPedro Geromel 3ZADRodrigues 38ZAEJuninho Capixaba 29LAEMichel  5VOLMaicon 8VOLJean Pyerre 21MECThaciano 16MECEverton 11ATAAlisson 23ATADiego Tardelli 9ATAAndré 90ATAFelipe Vizeu 10ATACAMVictor 1GOLPatric 2LADLeonardo Silva 3ZADIgor Rabello 16ZAEFábio Santos 6LAEJosé Welison 14VOLNathan 23MECJair 88VOLCazares 10MECGeuvânio 49ATALuan 27MECBruninho 43MECRicardo Oliveira 9ATAChará 8ATARenato GaúchoTécnico4 - 3 - 3Esquema TáticoRodrigo SantanaTécnico4 - 4 - 2Esquema TáticoMostrar ficha completaReservasJúlio César 22GOLLéo Moura 2LADRafael Galhardo 42LADRomulo 13VOLDarlan 37VOLMontoya 20MECVico 15ATAPepê 25ATACleiton 40GOLIago Maidana 19ZADHulk 22LAEAdilson 21VOLVinícius 29MECTerans 20MECAlerrandro 44ATAMaicon 11ATAInformações sobre o jogoArena do GrêmioArena Desportiva

Скачать веб-драйвер selenium для браузера Chrome:

http://chromedriver.chromium.org/downloads

Установить веб-драйвер для браузера Chrome:

https://christopher.su/2015/selenium-chromedriver-ubuntu/

Селен учебник:

https://selenium -python.readthedocs.io /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...