Moteur de recherche interne avec création d'un index

Eléphant du PHP | 70 Messages

08 sept. 2010, 17:59

Bonjour à tous,

J'essai de créer un moteur de recherche interne pour mon site et en fouillant sur Internet j'ai vu que la meilleure technique est de créer un script qui crawl mon site pour récupérer les urls des pages et qui récupère le contenu intéressant pour ensuite mettre en base de donnée l'url et le contenu affiné. J'ai trouvé quelques scripts tout fait tel que phpDig mais je ne comprend pas vraiment comment les installer et puis ça risque d'être difficile à intégrer avec mon admin.
Pour ce qui est de récupérer sur une page les urls à cawler et le contenu intéressant pour le mettre en base de donnée ça ne pose pas de problème, avec des REGEX j'arrive à obtenir ce que je veux.
Par contre je voudrais que le script puisse automatiquement passer d'une page à l'autre et faire le boulot, mais je ne vois pas trop comment faire pour qu'il ne réindexe pas des pages qu'il a déjà indexer sur d'autres pages et puis comment éviter une boucle sans fin, c'est à dire comment le script peut savoir qu'il a fini de scroller le site ?

Je vous remercie d'avance pour vos idées

ViPHP
ViPHP | 5462 Messages

08 sept. 2010, 19:19

pour parser du DOM c'est avec DOMDocument, ca sera plus simple et plus rapide qu'avec des regexp, avec DomDocument tu peux recupere aussi tout les liens il suffira des les parcourir, et faire une condition pour cexu ou il a deja regardé

Eléphant du PHP | 70 Messages

08 sept. 2010, 19:38

Ok, j'utiliserai peut être DOMDocument, je vais allez voir la doc.
Et donc avec une condition qui verifie si le lien a déjà été parsé je devrais arriver à un moment ou il ne trouve plus de lien à visiter ?
Vaut-il mieux que je récupère d'abord tous les liens à parser et puis ensuite revisiter les pages pour récupérer mon contenu ou alors je récupère au fur et à mesure ?

ViPHP
ViPHP | 5462 Messages

08 sept. 2010, 20:28

Ok, j'utiliserai peut être DOMDocument, je vais allez voir la doc.
Et donc avec une condition qui verifie si le lien a déjà été parsé je devrais arriver à un moment ou il ne trouve plus de lien à visiter ?
Vaut-il mieux que je récupère d'abord tous les liens à parser et puis ensuite revisiter les pages pour récupérer mon contenu ou alors je récupère au fur et à mesure ?
au fur et a mesure, sinon tu parseras la page 2 fois (1 fois pour les lien 2 fois pour ton texte)

ViPHP
ViPHP | 4039 Messages

08 sept. 2010, 22:26

Au fait, ton site, il est stocké dans quoi ? des fichiers ? une base de données ?

Moi je propose de passer par indexeur type Xapian, un bon vrai moteur de recherche bien poilu, dans lequel tu indexes ce que tu veux.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.

Eléphant du PHP | 199 Messages

09 sept. 2010, 15:27

http://tutorialzine.com/2010/09/google- ... ax-jquery/

Un article qui pourrait peut être t'aider.

Mammouth du PHP | 19672 Messages

09 sept. 2010, 19:10

... un bon vrai moteur de recherche bien poilu ...
Ça mériterait peut-être une éPHPilation vigoureuse un truc pareil :mrgreen:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
ViPHP | 4039 Messages

09 sept. 2010, 22:05

... un bon vrai moteur de recherche bien poilu ...
Ça mériterait peut-être une éPHPilation vigoureuse un truc pareil :mrgreen:
Justement, je comptais écrire un sujet sur l'intégration de xapian à Php, puisque c'est quand même assez simple tout en étant très efficace, mais j'attends d'avoir un peu d'heures de libre pour m'y mettre :wink:
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.