Journal Un moteur de recherche aussi futé et précis que bash?

Posté par  (site Web personnel) .
Étiquettes : aucune
0
9
mar.
2009
Utilisant souvent à la fois la ligne de commande et Google, je me retrouve souvent à maudire le deuxième de ne pas avoir les fonctionnalités du premier.

Google est loin d'être aussi précis et flexible qu'un ls | grep. (et compagnie, je ne suis pas expert de la ligne de commande)
Bien trop souvent Google tente de réfléchir à notre place et de corriger notre orthographe, nos termes, ...
Et si je veux faire une recherche sur un mauvais orthographe? Et si je veux faire une recherche où la casse importe?
Je peux vous dire que sitôt que l'on me présentera un moteur de recherche acceptant des syntaxes du type "abc*def??.og?" je quitterai Google sans regrets.
La question est donc tout d'abord de savoir si cela est techniquement possible.
Qu'est-ce que cela implique techniquement? Peut-on conserver le schéma du moteur de recherche présenté sur Wikipédia : Moteur_de_recherche ?

En clair, cela restera-t-il un idéal inatteignable ou peut-on l'imaginer devenir réalité sous peu?
  • # Fais un front-end à google

    Posté par  (site Web personnel) . Évalué à 4.

    Plusieurs problème : il faut que tu génère des chaines à partir de ta regexp. Pas facile...
    2 liens pour explorer le problème :

    http://www.perlmonks.org/index.pl?node_id=284513

    http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.13.2(...)


    Pour le problème de la casse, tu peux analyser les résultats que renvoi google.
    Une fois que tout cela est en place, tu pourrais faire une interface style www.goosh.org , agrémentée d'opérateur de filtrage texte.

    Un beau sujet à creuser, mais tu risque d'y passer du temps...

    « Il n’y a pas de choix démocratiques contre les Traités européens » - Jean-Claude Junker

  • # Exalead

    Posté par  (site Web personnel) . Évalué à 0.

    Exalead ( http://www.exalead.fr ) et un moteur de recherche sympathique, français (donc bien, forcément :p ), qui permet de faire des recherches par expressions rationnelles (pour la syntaxe exacte des requêtes, cliquouiller sur "recherche avancée").
    • [^] # Re: Exalead

      Posté par  (site Web personnel) . Évalué à 9.

      Et membre d'AFDEL, militant pour la brevetabilité des logiciels.

      Adhérer à l'April, ça vous tente ?

      • [^] # Re: Exalead

        Posté par  (site Web personnel) . Évalué à 10.

        Un scud aussi fort contre un moteur de recherche aurait mérité un peu de "sources" (version Wikipedia :) ) pour ne pas passer pour un FUD (ce dont j'avais peur au départ)

        Donc :
        - Lien Exalead AFDEL : http://www.afdel.fr/news0001092b.asp
        - AFDEL et les brevets : http://www.journaldunet.com/solutions/0510/051028_3q_afdel.s(...)

        Allez hop, Exalead est sur ma liste noire maintenant, à ne pas conseiller.
        Faudrait effectivement peut-être mettre en place un site qui recense les affinité de chaque entreprise!
      • [^] # Re: Exalead

        Posté par  (site Web personnel) . Évalué à 4.

        Bon c'est sûr que Google est autrement plus gentil (Don't be evil!), il nous offre toutes les sources de son moteur de recherche et offre des bières gratuites au FOSDEM ! (attention, il y a un piège)
        • [^] # Re: Exalead

          Posté par  . Évalué à 10.

          (attention, il y a un piège)

          Les bières sont sans alcool?
          • [^] # Re: Exalead

            Posté par  (site Web personnel) . Évalué à 2.

            Bah les sources de son moteur de recherche ne sont pas disponible (et encore moins libres).
            • [^] # Re: Exalead

              Posté par  . Évalué à 3.

              Je valide que c'était de l'humour, car les free beer du FOSDEM étaient vraiment alcoolisées ...
        • [^] # Re: Exalead

          Posté par  . Évalué à 2.

          Ixquick se dit gentil tout plein : https://eu.ixquick.com/fra/protect_privacy.html
  • # altavista

    Posté par  . Évalué à 3.

    Je ne suis pas certain que les expressions compliquées qu'il acceptait il y a 12-13 ans soient toujours d'actualité.

    C'était vraiment le top ce moteur, mais ils se sont laissés dépasser par google.
  • # Ca existe déjà

    Posté par  (site Web personnel) . Évalué à 9.

    Ma page d'accueil c'est http://goosh.org

    goosh pour Google et Shell

    C'est basé sur les API de recherche google et ca reprend les rudiments du shell.
    Perso, je suis accroc.

    Uld
    • [^] # Re: Ca existe déjà

      Posté par  . Évalué à 3.

      Moué, c'est sympa, mais tant qu'à faire, ça sera bien plus utile si on pouvait l'utiliser réellement dans un shell, mais là, comme c'est plein d'Ajax, c'est même pas la peine dans w3m ou links...

      Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur

    • [^] # Re: Ca existe déjà

      Posté par  (site Web personnel) . Évalué à 1.

      non, quand je demande "?crans" j'obtiens le résultat de la recherche avec "crans", et pas tous les écrans, ecrans, et compagnie.
  • # Moteur de recherche et expressions régulières

    Posté par  . Évalué à 10.

    J'avais un peu réfléchi au problème d'avoir un moteur à expressions régulières, le problème est que la recherche par expression régulière est, il me semble, incompatible avec l'indexation.

    On pourrait certes imaginer un mécanisme qui exécuterait l'expression régulière sur la table d'index et qui ensuite afficherait les pages correspondants aux index correspondants (selon un ordre de pertinence qui a mon avis sera difficile à déterminer), mais je ne penses pas que ce sera aussi efficace que tu le souhaite. Les moteurs de recherches excluent en effet une grande partie des pages pour n'indexer que ce qui est pertinent, or des recherches par expressions régulières sont plutôt pour rechercher une syntaxe particulière et précise sur une page, typiquement le genre d'information qui disparaît lors de l'indexation.

    Une autre approche, serait d'indexer les pages selon les résultats à telle ou telle expression régulière, il faudrait pour cela construire l'ensemble des phrases possibles et imaginables d'un alphabet donné et en déduire l'ensemble des expressions régulières décrivant ces phrases ... vous voyez le genre ? D'ici là, Hurd sera sorti en version stable, la paix sera revenu au proche orient et nous nous seront mort mon frère (sur l'air de Quand_les_hommes_vivront_d'amour).

    La troisième approche, plus réaliste que la seconde mais toujours irréalisable, consiste à compiler l'expression régulière à la volée et à l'exécuter sur les quelques tera-octets de cache représentant toutes les pages « indexées » par ton moteur de recherche, chose à faire évidemment à chaque requête. Cela sera certainement envisageable lors de l'avènement d'IPoT, on pourra alors rediriger les requêtes une semaine ou un mois plus tôt pour qu'elles soient terminées au moment où l'utilisateur en fera la demande.

    La solution la plus raisonnable consiste à avoir deux champs de recherches : dans un premier champ, l'utilisateur rentrerait des mots clefs qui seraient utilisés pour une recherche « classique » (par table d'index). Puis dans un deuxième champs, on rentrerait l'expression régulière souhaitée qui serait exécutée sur le sous ensemble de page résultant de la première recherche.

    Oups, je viens de me rendre compte que j'ai écris un gros pavé.
  • # T'es sûr ?

    Posté par  . Évalué à 8.

    "Je peux vous dire que sitôt que l'on me présentera un moteur de recherche acceptant des syntaxes du type "abc*def??.og?" je quitterai Google sans regrets."
    Et si c'est Google qui te le propose, tu partiras quand même ? C'est con...
  • # D'ailleurs, Google le fait déjà

    Posté par  . Évalué à 4.

    Google a déjà un moteur acceptant les regex, mais seulement pour les recherches dans du code open-source :

    http://www.google.com/codesearch

    On en avait parlé ici même : http://linuxfr.org/~eMerzh/22819.html
  • # déjà

    Posté par  . Évalué à 4.

    Déjà, si google pouvait chercher exactement ce qu'on lui demande, ca serait un grand pas en avant (ou en arrière dans le temps...). Sans expression régulière, je recherche juste un mot et il m'affiche les pages web contenant ce mot.

    Pas les dérivation de ce mot (conjugaison ou pluriel..), ni même les pages dont d'autres pages contiennent ce mot de pointe dessus.
    Juste le mot.

    Mais c'est parfois trop demandé, même pour google...
    • [^] # Re: déjà

      Posté par  . Évalué à 2.

      Je ne l'avais jamais remarqué mais effectivement il est impossible de faire une recherche sur un mot précis.

      Par exemple, si sur http://www.google.fr/advanced_search?hl=fr je demande à rechercher les pages contenant exactement "lapins", sur les pages de résultats, j'ai des pages avec seulement "lapin" (mot clef mis en gras dans l'aperçu du résultat).

      BeOS le faisait il y a 20 ans !

      • [^] # Re: déjà

        Posté par  . Évalué à 3.

        Les recherches de mots "exactes" avec des guillemets doubles ont été désactivés il y a quelques semaines. Je ne sais pas pourquoi, moi je trouvais ça bien pratique.
        • [^] # Re: déjà

          Posté par  . Évalué à 3.

          Le nombre de mots est maintenant aussi limité à 32.
        • [^] # Re: déjà

          Posté par  . Évalué à 2.

          Je crois pas, c'est juste que, comme pour les flexions je pense, il recherche d'abord l'expression exacte, et il dégrade en recherchant tout les mots si il y a pas assez de résultats, ou si il n'y en a plus.

          Ce qui fait que t'as des résultats même si il trouve pas l'expression entre guillemets.
          • [^] # Re: déjà

            Posté par  . Évalué à 3.

            Bah, je sais pas mais je viens de tester avec "date", et il me met quand même des résultats avec "dates" soulignés.
            • [^] # Re: déjà

              Posté par  . Évalué à 3.

              Ça change pas mal l'ordre, les trucs sans "s" qui sortent sont ceux avec un vraiment très bon rank, comme wikipedia, c'est quasiment le seul à avoir uniquement le mot au singulier dans les cinq premières pages.

              Donc au final en pratique c'est pas vraiment dérangeant, surtout que faire une recherche sur le mot "date" en le mettant le mot au pluriel, ça peut arriver.
              • [^] # Re: déjà

                Posté par  . Évalué à 2.

                Ouai enfin quand il te corrige "date" en "data" ... (j'arrive plus à retrouver la recherche exacte, mais j'ai vu ça aujourd'hui)
      • [^] # Re: déjà

        Posté par  . Évalué à 1.

        En tapant "lapins" plustôt que lapins (sans guillemets) dans la zone de recherche, tu peux rechercher lapins (au pluriel) tout court.

        Idem pour un mot avec des fautes d'orthographe, ca marche pareil. Ce dont je me sers régulièrement pour trouver l'orthographe d'un mot (oui, je sais, y'a des dicos aussi ...)
        • [^] # Re: déjà

          Posté par  . Évalué à 5.

          C'est simple : si le premier lien proposé par Google est un skyblog, ça veut dire que c'est mal orthographié...


          :-D
        • [^] # Re: déjà

          Posté par  . Évalué à 2.

          Hem, le premier résultat pour la recherche "lapin" (avec les guillemets) est la page Wikipédia du Lapin (au singulier, donc).
          De plus, le texte mis en gras pour justifier le résultat est bien "lapin".

          Donc, non ça ne marche pas, et ça fait un moment déjà.

          Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur

          • [^] # Re: déjà

            Posté par  . Évalué à 2.

            Le deuxième lien est vers wikipedia aussi, mis en "lien connexe" ou un truc du genre, et comporte lui le mot "lapins" surlignés, tous les autres sur la première page ont un "s".

            J'imagine que le score des mots avec flexions doit être pénalisé par rapport aux occurences exactes, mais que la page wikipedia doit avoir un rank énorme et que le fait qu'en page connexe t'ait le mot exact et qu'il regroupe les résultats du même site explique cela, je vois rien de très très choquant en tout cas dans cet exemple là ...
        • [^] # Re: déjà

          Posté par  . Évalué à 2.

          Non, ça marchait bien avant, mais aujourd'hui ça ne marche plus.
      • [^] # Re: déjà

        Posté par  (site Web personnel) . Évalué à 2.

        Je suis absolument étonné (y'a quoi de plus fort qu'étonné, parce que ça le vaudrait) de voir que personne n'a encore rappelé l'utilisation du "+" magique.

        Ben oui, recherchez "+lapins" sur Google et vous chercherez que des lapins. Maintenant enlevez le "+" et vous aurez des lapins singuliers (enfin... j'me comprends...).

        Je dois ajouter que ça s'applique aussi aux expressions entre guillemets quand on le place avant le premier guillemet justement ? Allez non.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.