GOOGLE ADS

mercredi 27 avril 2022

Comment utiliser la méthode find_all dans bs4 sur un objet sans classe

import requests
from bs4 import BeautifulSoup
result=requests.get('http://textfiles.com/stories/').text
soup=BeautifulSoup (result, 'lxml')
stories=soup.find_all('tr')
print (stories)

La findméthode fonctionne mais find_allje ne sais pas pourquoi c'est peut-être parce qu'elle n'a pas de classe?


Solution du problème

le bon code est

import requests
from bs4 import BeautifulSoup
result=requests.get('http://textfiles.com/stories/')
soup = BeautifulSoup(result.content, 'html5lib')
stories=soup.find_all('tr')

vous pouvez accéder à chaque 'tr' en

stories[0]

0 peut être remplacé par n'importe quel nombre dans la liste Vous pouvez également utiliser Pandas, par exemple

import pandas
import requests
from bs4 import BeautifulSoup
result=requests.get('http://textfiles.com/stories/')
soup = BeautifulSoup(result.content, 'html5lib')
df=pandas.read_html(soup.prettify())
print(df)

Aucun commentaire:

Enregistrer un commentaire

Comment utiliseriez-vous .reduce() sur des arguments au lieu d'un tableau ou d'un objet spécifique ?

Je veux définir une fonction.flatten qui aplatit plusieurs éléments en un seul tableau. Je sais que ce qui suit n'est pas possible, mais...