Logo Khaganat

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
fr:moteur_de_recherche [2018/08/18 14:17] – Ajout de plus d'informations neodarzfr:moteur_de_recherche [2021/12/03 18:19] (Version actuelle) – modification externe 127.0.0.1
Ligne 4: Ligne 4:
 {{tag>brouillon}} {{tag>brouillon}}
  
-===== searx ====+===== Scrapy ====
  
-Métamoteur de recherche pour centraliser tous les moteurs de recherche propre à chaque site qui est en rapport avec le projetToujours en cours de développement, le repo git est ici : https://git.khaganat.net/neodarz/ryzomcore_searx+Framework python qui permet de crawler un site. Actuellement en cours de testtrès lent sur du matériel peu puissant. Plus d'information  directement dans le repo git [[https://git.khaganat.net/neodarz/khanindexer|khanindexer]].
  
-===== xapian omega ====+===== Manticore-search ====
  
-Moteur de recherche pour indexer le contenu d'un site, toujours en cours de test par neodarz([[https://xapian.org|Lien vers le site officie]]) Pour ceux qui veulent le tester la configuration réalisée pour les tests se trouvera ici. Le jeu de test est une copie du site de nevrax.org directement copié depuis la webarchive : https://git.khaganat.net/neodarz/nevrax-website-self-hostable+Indexer/Moteur de recherche écrit en C++Léger et plutôt rapide, ceci-dit il accuse de quelque lenteur sur du matériel peu puissantPlus d'information  directement dans le repo git [[https://git.khaganat.net/neodarz/khanindexer|khanindexer]].
  
-==== installation ====+===== Searx ====
  
- +Métamoteur de recherche pour centraliser tous les moteurs de recherche propre à chaque site qui est en rapport avec le projetToujours en cours de développement, le repo git est [[https://git.khaganat.net/neodarz/ryzomcore_searx|ici]].
-Tester uniquement en local pour le moment, sur archlinux. +
- +
-Installation du packet AUR: **xapian-omega**, l'installation n'est pas complète et l'usage n'est pas "plug&play"+
- +
-Le paquet AUR n'étant pas à jour, voici ma version du paquet avec la dernière version du soft ainsi que le bon check sum (ça vous évitera de le faire vous même): +
- +
-<code> +
-# Maintainer: lestb <tkhdlstfl dot l plus aur at gmail dot com> +
-# Contributor: Denis Kobozev <d.v.kobozev at gmail dot com> +
-# Package Repository: https://github.com/mij-aur-packages/xapian-omega +
- +
-pkgname=xapian-omega +
-pkgver=1.4.7 +
-pkgrel=1 +
-pkgdesc="Indexers and CGI search frontend for Xapian" +
-arch=('i686' 'x86_64' 'arm' 'armv6h' 'armv7h'+
-url="http://www.xapian.org/" +
-license=('GPL'+
-depends=('xapian-core' 'perl' 'pcre'+
-source=(http://oligarchy.co.uk/xapian/${pkgver}/${pkgname}-${pkgver}.tar.xz) +
-sha256sums=('d1b029c62cd4e3c6216515e22c72c9d45018135cd4f50ce336b21b2046045323'+
- +
-build() { +
-    cd "${srcdir}/${pkgname}-${pkgver}" +
- +
-    ./configure --prefix=/usr --sysconfdir=/etc +
-    make +
-+
- +
-package() { +
-    cd "${srcdir}/${pkgname}-${pkgver}" +
-    make DESTDIR=${pkgdir} install +
-+
- +
-</code> +
- +
-Il faut créer ces deux dossiers et leur attribuer les bons droit pour l'utilisateur qui va générer la base de données: +
-  * **/usr/lib/xapian-omega/templates** +
-  * **/usr/lib/xapian-omega/data** +
-  * **/var/log/omega** +
- +
-Une fois installer il faut récupérer dans les sources le dossier **templates** et copier sont, par example, dans le dossier **/usr/lib/xapian-omega/templates**. +
- +
-Pour archlinux le fichier de configuration n'étant pas correct il faut le mettre à jour de la manière suivante : +
- +
-<code> +
-# Directory containing Xapian databases: +
-database_dir /usr/lib/xapian-omega/data +
- +
-# Directory containing OmegaScript templates: +
-template_dir /usr/lib/xapian-omega/templates +
- +
-# Default template name if the CGI parameter "FMT" is not specified. +
-# (If not specified here, the default template name is "query"): +
-#default_template query +
- +
-# Default database name if the CGI parameter "DB" is not specified. +
-# (If not specified here, the default database name is "default"): +
-#default_db default +
- +
-# Directory to write Omega logs to: +
-log_dir /var/log/omega +
- +
-# Directory containing any cdb files for the $lookup OmegaScript command: +
-cdb_dir /var/lib/omega/cdb +
- +
-</code> +
- +
- +
-==== utilisation ==== +
- +
-=== création de la base de données === +
- +
-<WRAP center round info 80%> +
-Pour la génération de la base de données on estime que le jeu de test a été lancé avec la commande **php -S localhost:8080** et de ce fait que le site se trouve à l'adresse http://localhost:8080. On estime aussi que le répertoire de travail est la racine du site de nevrax.org directement copié depuis la webarchive dont le lien se trouve plus haut. +
-</WRAP> +
- +
-Pour générer la base de données, dans le cas de l'usage du jeu de test définit plus haut, les commandes sont les suivantes : +
- +
-D'abord on index les fichiers où l'on peut faire de l'extraction de texte : +
- +
-<code> +
-omindex --db /usr/lib/xapian-omega/data --url http://localhost:8080 --filter=text/markdown,html:'pandoc -f markdown -t html'  --filter=application/msword,html:'unoconv --stdout -f html .' +
-</code> +
- +
-Puis ensuite on index les autres fichiers où l'on n'a pas pu faire de l'extraction de texte : +
-<code> +
-omindex --db /usr/lib/xapian-omega/data --url http://localhost:8080 --filter '*:true' --retry-failed . +
-</code> +
- +
-La commande **omindex** doit être de la forme suivante : **omindex <options> <path>** où <options> correspond aux options et <path> le répértoire du site à indexer. +
- +
-Pour éviter d'aller chercher dans la doc, l'option **--db** indique le chemin de du dossier dans lequel la base de données sera sauvegardée. L'option **--url** indique le prefix à utiliser pour faire le lien vers le site et les options **--filter** des précisions pour chaque filtre si omindex ne sait pas quoi faire avec certainnes extension. Dans ces cas la, soit le filtre en question n'avait pas les bons logiciels d'installer pour récupérer le contenu du fichier, soit il ne pouvait pas récupérer le texte sur certains fichiers comme les images. +
- +
-Le filtre **--filter=text/markdown,html:'pandoc -f markdown -t html'** indique de convertir le markdown en html. Normalement il est censé pouvoir le faire, c'est natif mais vu qu'il doit le convertir aussi en html, le faire avec pendoc ne changera pas grand chose. Mais c'est un problème un réglé, un jour. +
- +
-Le filtre **--filter=application/msword,html:'unoconv --stdout -f html'** permet de convertir les documents word en html mais, sans doute du fait que la commande a été exécuté sur linux et que Microsoft Word n'est pas installé, il faut utiliser LibreOffice et ce n'est pas géré nativement par **omindex**. +
- +
-Le filtre **--filter '*:true'** permet seulement d'indexer les fichiers, c'est utile pour tout fichier binaire comme les images. Si l'option est présente, aucun texte ne sera extrait ! +
- +
-=== Recherche === +
- +
-== Ligne de commande == +
- +
-Pour faire une recherche rapidement dans la base, pour tester si ça marche: +
- +
-<code> +
-/usr/lib/xapian-omega/bin/omega 'P=webarchive' HITSPERPAGE=10 > test.html; firefox test.html +
-</code> +
- +
-Simple commande qui permet faire une recherche et de l'ouvrir avec firefox pour voir le résultat. +
- +
-== Page web == +
- +
-Pour faire en sorte que ce soit accessible via votre navigateur web, il faut en premier lieu activer CGI. +
- +
-Pour apache (c'est ce que j'utilise sur mes serveurs, pour les autres soft aller chercher sur le net et/ou compléter cette page de wiki) il suffit d'activer le module **cgid_module** ou **cgi_module** selon si vous avez activé le module **mpm_prefork_module**. +
- +
-Une fois le module activé il faut configurer apache pour préciser le dossier dans lequel se trouve omega. Pour les tests sur archlinux il y a déjà le dossier **/srv/http/cgi-bin** qui est configuré. Si jamais il y a besoinla configuration est la suivante : +
- +
-<code> +
-<Directory "/srv/http/cgi-bin"> +
-    AllowOverride None +
-    Options None +
-    Require all granted +
-</Directory> +
-</code> +
- +
-Dans le dossier **/srv/http/cgi-bin** il faut copier l'executable **omega**, pour archlinux il se trouve dans le dossier **/usr/lib/xapian-omega/bin/omega**. Il est aussi possible de copier le fichier **/etc/omega.conf** de configuration. S'il n'est pas présent dans **/srv/http/cgi-bin** alors ça sera le fichier **/etc/omega.conf** qui sera utilisé. +
- +
-Et voila, dans ce cas, il suffit de se rendre sur **http://127.0.0.1/cgi-bin/omega.cgi** et c'est fini.+
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
fr/moteur_de_recherche.1534601826.txt.gz · Dernière modification : (modification externe)

Licences Mentions légales Accueil du site Contact Inclusion