Importer des données HTML vers Excel [Fermé]

- - Dernière réponse : creadiff
Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
- 7 juil. 2011 à 21:27
Bonjour la communauté!!!

J'ai plusieurs documents ayant la meme structure (car issus d'un même site). Je voudrais extraire certaines données vers une base de données Excel. La difficulté c'est que j'ai 1000 fichiers html!! Je dois trouver le moyen d'extraire ces informations de tous ces fichiers automatiquement avec par exemple une macro VBA. Voici les informations que je voudrais extraire:

-nom de l'entreprise
-date création
-forme juridique
-capital social
-siret
-etablissement secondaire ( ou siège social)
-adresse
-RCS
-Etablissement(s) (nombre)
-Fonction
-nom
-date de naissance
-lieu de naissance

En pièce jointe (web.zip) vous pourrez m'aider à traiter le premier échantillon.^^

Ensuite j'ai exactement le meme travail à faire avec une autre structure de fichier html issus d'un autre site internet. Il faudrai que j'arrive à importer les données suivantes dans un fichier excel:

-siret
-adresse
-région
-forme juridique
-capital
-date de création
-activité
-effectif
-etablissement(s)
-type
-total du bilan
-ca net
-résultat net

En pièce jointe se trouve un échantillon de ces fichiers (web2.zip).

En ce qui concerne les pièces jointes, ils se trouvent sur le lien suivant :

http://www.excel-downloads.com/forum/160810-extraire-des-champs-dune-ligne-de-code-html-pour-creer-une-base-de-donnees-2.html

J'ai vraiment besoin d'aide.
Je vous remercie d'avance.
Bes.

Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
56
2
Merci
Toutes mes excuses Mademoiselle, je suis plus habitué à voir des Messieurs poser des questions de geeks.

Le truc dans le parsing c'est d'identifier la structure du document, en particulier les structures répétitives ET les structures qui quant à elles sont uniques sur la page. Parfois, un pré-traitement peut être d'une grande aide.

L'autre truc est d'apprendre à utiliser les expressions régulières. En effet, elles permettent d'extraire de façon aisée des données à d'un document texte, à condition de savoir s'en servir.

On remarque ainsi que l'expression régulière suivante permet de capturer tous les champs présents dans le code que tu as présenté :
<span>([^\:]+) \:<\/span>([^<]+)</p>


Quand à savoir comment coder ça... ce serait un peu long à expliquer ici, voici quelques tutos :

http://www.vbfrance.com/tutoriaux/EXPRESSIONS-RATIONNELLES-REGULIERES_520.aspx

http://cafeine.developpez.com/access/tutoriel/regexp/

http://www.regular-expressions.info/vb.html

http://www.vbaexpress.com/kb/getarticle.php?kb_id=68

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 59124 internautes nous ont dit merci ce mois-ci

Messages postés
445
Date d'inscription
samedi 3 avril 2010
Statut
Membre
Dernière intervention
3 novembre 2011
56
0
Merci
Tiens tiens, Monsieur entreprend de parser Sociétés.com :-)
Par contre la PJ n'apparaît pas. Donne-nous plutôt un échantillon de code HTML, peu de gens (expérimentés) vont télécharger un ZIP qui traîne au hasard d'un forum !
0
Merci
A non creadiff, c'est pas Monsieur, c'est Mademoiselle!!

Les données ne viennent pas du tout de société.com lol.

Voici le bout du code qui m'intéresse.
L'objectif est de pouvoir récupérer dans une base de données tel que Excel par exemple la date de création, la forme juridique etc...dans des champs. La structure du code est identique pour mes 500 fichiers.

Mais comme tu peux le voir dans le lien, j'ai deux structures de fichiers issues de deux sites différents.

Voici le morceau de code qui m"intéresse. Le challenge maintenant est de faire (peut etre) un macro qui récupère ces données là....



<span><span>Informations juridiques</span></span>
<p>
<span>Date de création :</span>01 mars 2009</p>
<p>
<span>Forme juridique :</span>Autre société à responsabilité limitée</p>

<p>
<span>Capital social :</span>8 000 EURO</p>
<p class='spec'>
<span>SIRET :</span>511 032 500 00015</p>
<div class="speca">
<a rel="nofollow" href="http://www.manageo.fr/entreprises/rapport/info.jsp?Siren=511032500&Nic=15" rel='nofollow' >+ d'informations juridiques sur cette entreprise ? Cliquez ici</a>

</div>
</div>
<div id="infosSiege" class="blocDetailInfos">
<span><span>Siège</span></span>
<p>
<span>Adresse :</span>34 RUE MAURICE BRUGNON<br />02500 LA HERIE</p>
<p>

<span>RCS :</span>511 032 500</p>
<p class='spec'>
<span>Etablissement(s) :</span>1</p>
</div>
</div>
<div class="bloc2">
<div id="infosDir" class="blocDetailInfos">

<span><span>Dirigeant principal</span></span>
<p>
<span>Fonction :</span>Gérant</p>
<p>
<span>Nom :</span>COLZY Benedicte</p>
<p>

<span>Date de naissance :</span>16 Mars 1978</p>
<p class='spec'>
<span>Lieu de naissance :</span>SAINT QUENTIN</p>
</div>
<div id="infosAct" class="blocDetailInfos">
<span><span>Activité</span></span>

<p>
<span>Code NAF :</span>3511Z</p>
<p class='spec'>
<span>Libellé activité :</span>Production d'électricité</p>
</div>

Merci de ton aide^^