2017-02-06 1 views
1

J'essaie de créer un script de grattage dans Python 2.7.Comment voulez-vous analyser cette table HTML en utilisant Python?

La demande est ok, mais j'ai du mal à essayer d'analyser cette table avec une belle soupe. J'ai beaucoup essayé, et j'ai beaucoup cherché sur le forum, mais rien ne fonctionne pour moi, la première fois que je fais ça.

Voici le code:

import requests, os 
from bs4 import BeautifulSoup 

url='http://fse.vdkruijssen.eu/ferrylist.php' params={'selectplane':'Cessna 208 Caravan','submit':''} 
response=requests.post(url, data=params) 

soup = BeautifulSoup(response.text, "html5lib") 
table=soup.find('table') 
print table 

Mais ce ne renvoie aucun tableau. J'essaie de récupérer au moins la première et la dernière colonne.

Répondre

1
soup = BeautifulSoup(response.text, "lxml") 

changer l'analyseur à lxml

Beautiful Soup prend en charge l'analyseur HTML inclus dans la bibliothèque standard de Python, mais il prend également en charge un certain nombre de parseurs Python tiers. L'un est l'analyseur lxml. En fonction de votre configuration, vous pouvez installer lxml avec une de ces commandes:

$ apt-get install python-lxml 

$ easy_install lxml 

$ pip install lxml 

Par défaut, BS4 utiliser l'analyseur lxml.

+1

Merci pour la réponse et les précisions! – MagicP