Créer un moteur de recherche expérimental

  • Auteur de la discussion Auteur de la discussion Bond70
  • Date de début Date de début
WRInaute discret
Bonjour à tous,

Je suis actuellement en train de réaliser une thèse de doctorat portant sur le domaine du référencement. Pour avancer sur mes travaux de recherche, j'aurai besoin de mettre en place un moteur de recherche expérimental. Ce moteur de recherche serait à utilisation purement locale. C'est à dire qu'il se contentera d'analyser et de référencer des pages HTML stockées sur ma propre machine (et non des pages sur Internet).

Au fur et à mesure de mes expériences, j'aimerai définir mes "propres" critères de positionnement afin de dissocier complétement ce moteur de recherche expérimental de l’algorithme de Google. En effet, je veux maitriser à 100% la méthode de classement de mes pages.

Voici quelques exemples de critères que je pourrai définir :

- Les pages HTML ayant une balise Title comprise entre 30-35 caractères seront mieux positionnés
- Les pages HTML ayant une balise Meta Description compris entre 60-65 caractères seront mieux positionnés
- Les pages HTML ayant un couleur de police rouge seront mieux positionnés
- ...
- ...


Bref vous avez compris le principe. Le but est d'avoir un environnement de recherche maitrisable en évitant les fluctuations ou les mises à jour d'algorithme (si l'on prend le cas de Google par exemple).

J'ai trouvé ce chapitre intéressant (http://bit.ly/1hSYJpJ). L'auteur essaye de créer son propre moteur de recherche en utilisant le langage Python, mais le crawler est fait pour fonctionner sur Internet, c'est à dire avec de vrais sites Internet et non des documents HTML locaux.

Avez-vous des idées ou des remarques pour que je puisse attaquer ce projet ?

Merci ! :wink:
 
WRInaute accro
Pistes pour indexer/scraper:
http://scrapy.org/
http://django-dynamic-scraper.readthedocs.org/en/latest/
https://dryscrape.readthedocs.org/en/latest/

Pour la recherche dans les documents:
ElasticSearch: http://www.elasticsearch.org/ (la rolls royce du search)
Whoosh: https://pythonhosted.org/Whoosh/
Solr: https://lucene.apache.org/solr/
Xapian: http://xapian.org/

Je te montre ces moteurs de recherche car ils supportent des choses auquelles tu n'auras p-e pas pensé:
- Stemming
- Accent folding
- Term boosting
- Spell checking
- ...
 
WRInaute passionné
Bonjour Bond70,

Cette thèse est dans le cadre de la recherche informatique et programmation ou plutot dans le domaine du web plus global?

Le nombre d'outils et d'exemple est très large sur la toile, et je cernes mal ta problématique.

Personnellement, j'utilise un seul outil développé par mes soins, une base de donnée Française (4D) programmable, un peu couteuse mais gratuite pour les étudiants / enseignants.

Je développe un crawler et moteur de recherche avec cet outil (Presmgo.fr), mais l'analyse peut évidement se faire sans crawl et en chargeants tous les fichiers sur le disque que l'on souhaite (suffit de donner le chemin du/des répertoires et obtenir / charger la liste des docs).

Pour aller plus loin, tu peux me contacter en MP.
 
WRInaute discret
Bonjour,

Tout d'abord merci pour vos réponses,

Ma problématique de recherche est orientée sur le "Processus" de conception du référencement.
En gros, j'étudie les méthodes qu'utilisent les référenceurs pour améliorer le positionnement des sites Internet. Mais ma recherche touche davantage les méthodes de travail des référenceurs que les "techniques" de référencement à proprement parler.

Ce moteur de recherche expérimental aura pour but de "simuler" les variations des algorithmes des moteurs de recherche (tel que celui de Google). Le but n'est pas de répliquer celui de Google mais de faire "comme si" afin de tester l'efficacité de telle ou telle méthode de travail.

C'est la raison pour laquelle j'aimerai concevoir un moteur de recherche expérimental à critères de positionnement variable. Ces critères de positionnement devront :

- être modifiable dans le temps
(ex : Jour n°1 : utilisation de 3 critères de positionnements pour le classement des pages HTML
Jour n°2 : utilisation de 4 critères de positionnements pour le classement des pages HTML
Jour n°3 : utilisation de 2 critères de positionnements pour le classement des pages HTML
...etc)

- disposer d'un facteur d'importance variable
(ex : Jour 1 : [Title]*coef 3, [meta description]*coef 2, [couleur police]^coef 0,5
Jour 2 : [Title]*coef 2, [meta description]*coef 4, [couleur police]^coef 1
Jour 2 : [Title]*coef 0,5, [meta description]*coef 3, [couleur police]^coef 2)


L'objectif final n'est pas de développer une usine à gaz comme Google mais une version très simplifiée. Une sorte de maquette à échelle réduite pour maitriser à 100% l'environnement de travail des référenceurs.

Merci pour votre aide !
 
Discussions similaires
Haut