récupération données tableau html avec python

récupération données tableau html avec python - Python - Programmation

Marsh Posté le 27-07-2015 à 12:16:30    

Bonjour à tous,  
 
Je débute tout juste sur ce forum et sur python, je suis donc navrée si ce sujet n'est pas au bon endroit ou s'il est mal formulé.  
 
Pour mon travail, je chercher à récupérer des données d'un tableau html pris sur www.societe.com à l'aide du logiciel python. Mais celui-ci me donne du fil à retordre :$. En effet, il ne semble pas à même de compter les colonnes dans chaque ligne pour prélever les données que je souhaite. Mon code est le suivant:  
 
from bs4 import BeautifulSoup
import urllib
url = 'http://www.societe.com/bilan/air-liquide-sante-international-552134728201312311.html'
html_file = urllib.request.urlopen(url)
soup = BeautifulSoup(html_file)
tables = soup.findAll('table')
for money in tables[0].findAll('tr'):
   tds=money.findAll('td')
   print (tds[0].string, '=>', tds[1].string)
 
et le message d'erreur est: IndexError: list index out of range.  
 
L'un d'entre vous aurait-il une idée?  
 
Merci d'avance et bonne journée à tous.  

Reply

Marsh Posté le 27-07-2015 à 12:16:30   

Reply

Marsh Posté le 27-07-2015 à 15:09:25    

Le premier <tr> de ta table contient des <th>, pas de <td>. Donc money.findAll('td') est une liste vide, et donc erreur. Normal.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed