begin process at 2010 02 10 07:47:16
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Reseaux et Internet

 > WEB SPIDER - WEB CRAWLER

WEB SPIDER - WEB CRAWLER


 Information sur la source

Note :
Aucune note
Catégorie :Reseaux et Internet Classé sous :spider, crawler, htmlparser, robot, parser Niveau :Initié Date de création :16/04/2007 Vu / téléchargé :9 079 / 704

Auteur : AlexN

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note


 Description

C'est une version simple en mode console d'un robot web : un spider ou crawler.
Les spiders ou crawler sont des robots qui parcourent le web pour en connaitre sa structure et éventuellement son contenu.
Ce sont les petites bêtes qu'utilisent les moteurs et parfois aussi les meta moteur de recherche.

Pour faire fonctionner celui la, il faudra installer la librairie htmlparser qui se trouve à l'adresse : http://htmlparser.sourceforge.net/


 Conclusion

Utilisation :

- Ecrire l'url de base dans la variable URLSite
- Donner le nombre maximum d'url à "visiter" dans la variable maxURLtoVisit
- Rajouter éventuellement des extensions de fichiers dans le vecteur allowedExtensions si le site cible les utilise
- Positionner les différentes options du programme (leur nom est suffisement explicite)
A noter le booleen stayInDomain permet au spider de ne pas "déborder" de son site cible.
Si il est positionné à false, le spider ira se balader un peu n'importe où sur le web, mais c'est aussi interressant comme comportement.
- Compiler et lancer le programme

Liste des bugs : probablement...J'ai pas tout tester, à vous de jouer avec. Je reste à l'écoute pour les corrections (constructives s'entend, si c'est pour me dire il manque une virgule, je m'en peint le nombril avec le pinceau de l'indifférence... :o)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

CHUNKEDXML, LIRE DU XML PAR MORCEAU
Source avec Zip EXPLORATEUR D'IMAGES
Source avec Zip ANALYSEUR XML GÉNÉRIQUE ET PROGRAMMATION REFLÉXIVE
Source avec Zip REDIRECTION D'URL ET TRANSMISSION DE COOKIES
SUPPRIMER LES BALISES D'UN FICHIER HTML

 Sources de la même categorie

Source avec Zip SERVEUR GENERIQUE par pacifikateur
Source avec Zip Source avec une capture JOMESSENGER : APPLICATION CLIENT/SERVER par numurique
Source avec Zip MINI SERVEUR HTTP par yvesyves
Source avec Zip Source avec une capture TCHAT EN DEUX PARTIES: CLIENT ET SERVEUR par benads
Source avec Zip CONNEXION SERVEUR VIA PROXY EN JAVA par moumou95

 Sources en rapport avec celle ci

CHUNKEDXML, LIRE DU XML PAR MORCEAU par AlexN
Source avec Zip SOURCECODEPARSER par Spiky33
Source avec Zip APPLET IRC + ANNA BOTEN : UN BOT IRC QUI PERMET DE JOUER A D... par coucou747
Source avec Zip [JAVA3D] PARSEUR DE FICHIER WAVEFRONT par bebe47
SUPPRIMER LES BALISES D'UN FICHIER HTML par AlexN

Commentaires et avis

Commentaire de karoudja le 17/08/2007 11:44:39

bravo source très intéressante. Celle-ci m'a fortement aidé pour mon application. merci bcp.

Commentaire de AlexN le 17/08/2007 20:35:47

de rien

à noter :

Il existe principalement deux méthodes pour parcourir un site (une arborescence) :

- breadth first : le robot visite les url au fur et et mesure qu'elles apparaissent dans les pages.
- deepth first : le robot commence à lire les pages puis descend dans l'arborescence dès qu'une url lue le permet puis termine la lecture des pages en remontant.

le source posté ici utilise la première méthode.

Commentaire de Nextanalyzer le 23/04/2008 10:22:25

Bonjour,

Je trouve me script très intéréssant et j'ai voulu l'essayer, je rencontre un gros soucis pour l'installation des librairies htmlphraser.
Je suis sur macintosh et j'utilise Netbeans, j'ai bien copier le contenu du dossier bin et lib dans ceux respectifs localisés dans libraries/java ...
J'ai beau compiler donc javac spider.java et la que des erreurs du à la librarie, j'ai donc du mal l'installer, je ne sais pas.

Pourriez vous m'éclairer s'il vous plaît ?

En vous remerciant d'avance.

Commentaire de AlexN le 26/04/2008 08:41:21

Bonjour,

je ne connais pas netbeans, je ne serais pas d'une grande aide. Sinon voici une méthode pour compiler en ligne :

- créer un répertoire nommé tmp à la racine d'une machine
- copier le fichier htmlparser.jar dans le répertoire tmp
- créer un répertoire spider dans le répertoire tmp
- copier le fichier Spider.java dans le répertoire spider
- compiler : javac -classpath \tmp\htmlparser.jar spider\Spider.java

Commentaire de ndiengphp le 13/12/2008 13:02:00

Bonjour ALEXN,

tout d'abord merci beaucoup pour ce source. car cela fait une semaine que j'éssayer de coder moi meme un spider car ne savait pas que y'avais des sources disponibles. Je suis une débutante.

Donc j'ai suivi à la votre recommendation pour la compilation, et elle marche. Mais je n'arrive pas à éxécuter le fichier Spider.class


Il me met comme erreur exeption in Thread main? alorque que je renseigne bien le classpath meme lors de léxécution et je suis dans le bon répertoire.


Je vous remercie de votre réponse.

Commentaire de AlexN le 13/12/2008 13:57:36

Bonjour,

"Exception in thread main" n'est pas suffisamment explicite pour que je puisse vous aider dans la résolution de l'erreur. Il faut faire une copie de la pile des messages d'erreurs, notamment pour savoir à quelle ligne se produit l'erreur, et m'indiquer quelle est la ligne de code source de l'erreur (un numéro de ligne ne veut rien dire surtout si vous avez modifié un peu la source...)

Commentaire de ndiengphp le 13/12/2008 15:16:08

Rebonjour ALEXN,


En fait je n'ai pas modifier le code source. Je dois utiliser un crawler pour extraire les informations( url de documents) contenus dans Wikipedia.

ET donc par chance je suis tombé sur votre code. je dois juste la modifier (après avoir testé) pour qu'il me suave les informations dans une BDD sql en utilisant phpmyadmin. Cependant j'ai juste changer url site et mis http://ent.wikipedia.org.


Comme je vous l'ai dit, la compilation marche ( ne génère aucune erreur)et j'ai le fichier spider.class. Par contre l'exécution ne marche pas:

java spider.class oubien java -classpath /tmp/hmlparser.jar spider/spider.class

J'ai essayé les deux mais j'obtient comme erreur:

Exception in Thread "main" java.lang.NoClassDefFoundError: spider/class

La premiere éxécution, j'ai défini dans le classpath ou se trouve toute la source de Html parser.


Je vous remerci.

Commentaire de ndiengphp le 14/12/2008 09:42:24

REbonjour ALEXN,


Voila les lignes exacts de l'érreur:

Exception in thread "main" java.lang.NoClassDefFoundError: voila/crawler/Crawler/class
Caused by: java.lang.ClassNotFoundException: voila.crawler.Crawler.class
        at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)


Si vous pouvez me venir au secour s'il vous plait.


JE vous remercie.

Commentaire de AlexN le 16/12/2008 11:18:52

Bonjour,

vous n'avez peut être pas modifié la source, mais vous n'avez pas la même arborescence que celle donnée en exemple (voila/crawler/Crawler/class), ni même le même nom de fichier...

Voici la procédure pour exécuter le fichier class que vous avez compilé (en partant du principe que vous travaillez dans un répertoire nommé "tmp" à la racine de votre arborescence (Ce message fait suite au message du 26/04/2008 08:41:21 qui montre comment compiler la source) :

1) Se positionner dans le répertoire "tmp" : cd \tmp
2) exécuter la ligne de commande suivante : java -classpath .;.\htmlparser.jar spider.Spider

Commentaire de hatimhamid le 08/10/2009 15:49:21

Bonjour.
Je ne suis pas très familiers des web crowlers.
Pourriez-vous me décrire en quelques lignes quelles sont les étapes à suivre pour tester votre code? J'ai un fort besoin de dévelpooer un web crowler spécifique à mes exigences.
Merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

htmlparser [ par dalila5555 ] Bonjourje suis entrain de faire un parser pour une page HTML.je suis arrivée a la parser mais le probleme c'est que je veux identifier la balise retou htmlparser [ par dalila5555 ] Bonjourje veux bien récuperer la balise  &lt;div id="zoom-keyword"&gt; dans un fichier HTMLdonc voila j'ai fait un parser qui me recupere la balise di Simuler une touche avec robot.keyPress() [ par ocbslim ] ocbslimBonjour,Je suis en train de réalisé un module qui simule le fait de taper une chaine de caractere au clavier avec robot.keypress(). Cette chain utilisation java.awt.Robot [ par umafaid ] Bonjour, j'utilise la classe Robot pour me déplacer automatiquement sur un panel. Mais j'aimerais que le robot s'arrête au clic de l'utilisateur et Parser du HTML [ par JALEO WAHRANI ] Bonjour à tous,j'utilise actuellement htmlparser pour parser du HTML (logique !). Cependant je bute sur un problème car je voudrais ouvrir un fichier, Parser IFC [ par Aleguire ] Bonjour à tous. Je suis actuellement en 2 ème année de DUT informatique et dans le cadre de mon projet tut je dois travailler avec des documents IFC. Parser un fichier text en java (tokens) [ par theunknown0o ] Bonjour,j'aimerai avoir un code qui pourrait parser en java un fichier texte le texte: ligne 1==&gt; ab=X cd=Y ef=Zj'aimerai avoir a la fin ke les val Gestion des balises XMl <include> avec un parser SAX-Handler [ par O Sensei ] Bonjour,   Voila tout est quasiment dans le titre. J'ai pour le moment mon parser SAX et un handler pour lire mon fichier XML. Je souhaiterai ajouter Parser Java Google [ par Snacksou ] Bonjour à tous,dans le cadre d'un projet de détection de plagiat à la fac, développé en Java, nous sommes amenés à faire des requêtes vers divers mote parseur html [ par bassoumbassoum ] Bonjour,j'ai éssayé un code pour parser un fichier html, j'ai réussit de sortir toutes les balises c'est mon codes:#import java.io.Serializable;import


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales