Forum Programmation.web Problème avec Nutch

Posté par  .
Étiquettes : aucune
1
30
juin
2006
Salut tout le monde,

J'aimerais savoir si quelqu'un ici utilise le moteur de recherche open-source Nutch ? Car je bute sur un bug et j'aimerais que l'on m'aide.

Merci :]
  • # Trop de politesse

    Posté par  . Évalué à 1.

    Comme sur IRC, ne demandes pas si tu peux poser une question/avoir de l'aide.

    S'il y a un bug, donnes les détails du bug.
    • [^] # L'excès de politesse n'est pas nocif...

      Posté par  . Évalué à 1.

      Eh bien après une recherche dans les forums, je me suis rendu compte qu'il n' y avait pas de posts relatifs à Nutch, d'où ma question...Je ne sais d'ailleurs pas s'il faut en parler ici ou dans le forum Java, quoiqu'il en soit voilà mon problème :

      1 - J'utilise Nutch 0.7 et tomcat 5.5.16 sous Mandriva Free 2006.0

      2 - J'ai un problème avec les accents :

      Au début c'était tout le moteur qui refusait les recherches de mots accentués (en tronquant les accents), j'ai fixé ça après qu'on m'eût indiqué d'ajouter UseBodyEncodingForURl="true" aux attributs de Connector dans le fichier de config de Tomcat server.xml, depuis plus de problème..

      Mais hélas il y'a une fonction dans le moteur qui permet d'afficher tous les résultats d'un site donné, donc t'as un lien qui apparait près de l'option "Cache" (comme dans Google) et qui permet d'afficher tous les résultats du site d'un résultat donné (en utilisant la même syntaxe site:www.machin.com), quand on clique dessus le résultat est qu'il refuse les caractères accentués les remplaçant par un point (par exemple 'site:ww.machin.com être' donnera 'site:ww.machin.com .tre' donc 0 résultats) je pense qu'il s'agit d'un problème d'encodage de l'url. Voilà la portion de code concernée :

      /* <% if (hit.moreFromDupExcluded()) {
      String more =
      "query="+URLEncoder.encode("site:"+hit.getDedupValue()+"
      "+queryString)
      +params+"&hitsPerSite="+0
      +"&clustering="+clustering;%>
      (<i18n:message key="moreFrom"/>
      <%=hit.getDedupValue()%>)
      <% } %> */

      3 - Je tiens à préciser que je fais tout en UTF-8.

      4 - Voilà mes locales :

      LANG=fr_FR
      LC_CTYPE=fr_FR
      LC_NUMERIC=fr_FR
      LC_TIME=fr_FR
      LC_COLLATE=fr_FR
      LC_MONETARY=fr_FR
      LC_MESSAGES=fr_FR
      LC_PAPER=fr_FR
      LC_NAME=fr_FR
      LC_ADDRESS=fr_FR
      LC_TELEPHONE=fr_FR
      LC_MEASUREMENT=fr_FR
      LC_IDENTIFICATION=fr_FR
      LC_ALL=

      5 - Il est à noter que mon Firefox est configuré en ISO-8859-1 je l'ai changé en Unicode UTF-8 sans succès.

      Voilà, Merci :]
      • [^] # Eureka

        Posté par  . Évalué à 1.

        Ca y'est, j'ai trouvé, c'est encore Tomcat qui m..de, il faut ajouter la variable :

        CATALINA_OPTS="-Dfile.encoding=UTF-8"

        dans le script de démarrage catalina.sh

        Voilà.
        • [^] # Re: Eureka

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

          en quoi ce serait tomcat qui merde ? d'après tes infos, la locale de ton système n'est pas en UTF-8.
          • [^] # Re: Eureka

            Posté par  . Évalué à 1.

            Salut,

            Même si je fais tout en UTF-8 (je parle des pages jsp et HTML) il faut quand même que je change les locales ? Je pose cette question parceque je me demande comment faire si j'hébèrge chez un provider étranger ?!
            • [^] # Re: Eureka

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

              par exemple tu utilises :

              URLEncoder.encode("site:"+hit.getDedupValue()+"
              "+queryString)

              (qui est deprecate soit dit en passant) qui utilise l'encoding systeme. c'est mal. si tu n'utilises rien qui utilise l'encoding systeme (essentiellement URLEncoder/URLDecoder, String#getBytes et new String(byte[])) alors l'encoding du systeme ne sera plus un probleme pour toi.
              • [^] # Re: Eureka

                Posté par  . Évalué à 1.

                Merci beaucoup c'est très instructif :)

Suivre le flux des commentaires

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