J'essaye actuellement de gratter un site web qui a un format HTML assez mal formaté (il manque souvent des balises fermantes, pas d'utilisation de classes ou d'ids, donc c'est incroyablement difficile d'aller directement à l'élément que vous voulez, etc.). J'utilise BeautifulSoup avec un certain succès jusqu'à présent, mais de temps en temps (mais rarement), je tombe sur une page où BeautifulSoup crée l'arbre HTML un peu différemment de (par exemple) Firefox ou Webkit. Bien que cela soit compréhensible car le formatage du HTML laisse cette ambiguïté, si j'étais capable d'obtenir le même arbre d'analyse que Firefox ou Webkit produit, je serais capable d'analyser les choses beaucoup plus facilement. Les problèmes sont généralement quelque chose comme le site ouvre une étiquette <b>
deux fois et quand BeautifulSoup voit la deuxième balise <b>
, il se ferme immédiatement le premier nid tandis que Firefox et Webkit les <b>
tags.Web scraping avec Python
Y a-t-il une librairie de grattage web pour Python (ou même tout autre langage (je deviens désespéré)) qui peut reproduire l'arbre d'analyse généré par Firefox ou WebKit (ou au moins se rapprocher de BeautifulSoup en cas d'ambiguïté) .
Pourquoi ne pas utiliser WebKit lui-même? Webkit est open source. Oui, il faudra un peu de temps pour s'y habituer. –
Avez-vous dit au groupe beautifulsoup? Ils sont probablement intéressés par les coins comme le vôtre http://groups.google.com/group/beautifulsoup –
Demandé tant de fois ... –