Journal indexer et chercher du pdf en mode console

Posté par .
Tags : aucun
5
14
juil.
2009
Cher journal

Ayant de plus en plus de document en .pdf à manipuler je me suis mis en tête de pouvoir retrouver ceux dont j'avais besoin via le terminal (en pensant a grep et find en particulier ). Hors le pdf n'est pas un format "console compliant" , en cherchant un peu chez Big Google , je suis tombé sur un article qui donnait une solution , shell en main :) . Le but est de convertir les pdf en texte dans un premier temps (on s'en doutait :) via un find et pdftotext , puis dans un second temps d'utiliser swish++ pour l'indexation et la recherche . Swish++ est un moteur de recherche en ligne de commande dérivé de Swish-e.

la partie indexation :



index++ -e "text:*.txt" .


la partie recherche :


search++ morphology and erosion and dilation not medicine


En testant les commandes , je me suis aperçu d'un comportement bizarre
Je cherche dans ma collection le mot clé "gnu" : aucune occurence
je cherche l'expression " gnu not linux" : il me sort tout un tas d'occurence (qui ne comporte ni gnu ni linux ) .

Mis à part cela la seconde question que je me pose ce situe au niveau du support d'autres langues (le français en particulier ) et la faq m'indique que le moteur n'indexe pas dans d'autres , et qu'on peut le faire mais que cela renverra lors de la recherche des résultats bizarres .

Et finalement chez moi pdftotext ne supporte pas la conversion du pdf en texte avec la typographie française non plus (caractères bizarre à la place des accents etc ... )

Aurais tu cher journal de ton coté , trouver une solution d'indexation de pdf pour le français (et l'anglais ) qui soit assez satisfaisante à l'usage ?


source de l'article sur debianadimin : http://www.debianadmin.com/quick-pdf-sorting-and-searching-s(...)
  • # Commentaire supprimé

    Posté par . Évalué à 2.

    Ce commentaire a été supprimé par l'équipe de modération.

    • [^] # Re: Mysql ou postgresql full text search

      Posté par . Évalué à 3.

      Au contraire, un outil qui fait purement recherche plein texte, plutôt qu'une fonction gadget d'un sgbd, sera surement mieux. Voir aussi xapian, mnogosearch, etc.
  • # Tracker ?

    Posté par (page perso) . Évalué à 7.

    (meta) tracker dispose d'un outil de recherche en ligne de commande et c'est un bon indexeur AMHA.

    http://projects.gnome.org/tracker/start.html
    • [^] # Re: Tracker ?

      Posté par (page perso) . Évalué à 2.

      C'est exactement ce que j'allais proposer, ça fait plus que juste du PDF, il y a plusieurs front-ends, etc.
    • [^] # Re: Tracker ?

      Posté par . Évalué à 2.

      Merci pour le lien, j'ai juste un hic c est que le daemon trackerd bug et ne semble pas faire son index sous ubuntu . Ou c est tracker-search qui bug et ne me renvoye pas de resultat . J'ai essayer plusieurs solutions des forums . rien n y fait. Helas
  • # Et en utilisant un format ouvert *et* libre ?

    Posté par . Évalué à 0.

    Avec le format DjVu, on peut faire exactement la même chose, grâce à la commande « djvutxt » (dans le paquet djvulibre-bin chez les Debian-like).
    Et je n'y ai pas vu de limitation du style de celle des caractères français.

    Le must, c'est qu'une commande a été prévue pour convertir très facilement des fichiers PDF en masse vers ce format : pdf2djvu.

    C'est peut-être une solution qui te comblerait (en plus de n'utiliser que du libre et d'obtenir de meilleurs taux de compression).

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

    • [^] # Re: Et en utilisant un format ouvert *et* libre ?

      Posté par (page perso) . Évalué à 3.

      Je dois pas être bien réveillé, mais comment un format peut ne pas être libre s'il est ouvert ? (hors brevets qui n'a jamais été un problème pour la majorité des devs libres)
      Accessoirement, les outils cités par le monsieur sont libres, le problème des accents est juste un bogue du-dit soft (en l'occurrence poppler sous GPL2+), et même si la solution de passer par djvu (sûr qu'ils ont pas des problèmes d'accents? Ça aurait dû être déjàvu) est recevable techniquement, mais la raison invoquée est juste débile.
      Ah et PDF est un standard iso, djvu pas.
      • [^] # Re: Et en utilisant un format ouvert *et* libre ?

        Posté par . Évalué à 3.

        Je dois pas être bien réveillé, mais comment un format peut ne pas être libre s'il est ouvert ? (hors brevets qui n'a jamais été un problème pour la majorité des devs libres)

        C'est peut-être trop subtil, mais j'y fais la même différence qu'entre open source et libre : le format ouvert a beau être librement implémentable, son avenir est entièrement décidé par une unique boîte commerciale.
        Tandis que pour le format libre, ses spécifications et son implémentation de référence, donc sont développement, sont libres.
        Mais j'admets que la différence est assez floue (d'autant qu'Adobe autorise l'utilisation de ses brevets).

        Accessoirement, les outils cités par le monsieur sont libres, le problème des accents est juste un bogue du-dit soft (en l'occurrence poppler sous GPL2+), et même si la solution de passer par djvu (sûr qu'ils ont pas des problèmes d'accents? Ça aurait dû être déjàvu) est recevable techniquement, mais la raison invoquée est juste débile.

        Pas faux, mais je lui proposais seulement une solution qui en plus de ses qualités techniques pourrait lui permettre de contourner le bug qu'il rencontre.

        Ah et PDF est un standard iso, djvu pas.

        Oué, OpenXML aussi est un standard ISO. Comme quoi, ce statut est loin de garantir une quelconque référence technique.

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

        • [^] # Re: Et en utilisant un format ouvert *et* libre ?

          Posté par (page perso) . Évalué à 2.

          Oué, OpenXML aussi est un standard ISO. Comme quoi, ce statut est loin de garantir une quelconque référence technique.
          Ok, donc avant, MS saymal parce que c'est pas standardisé, maintenant la standardisation saymal parce que MS a obtenu une standardisation. (Ah et sur le plan purement technique, c'est lequel la pire entre la standardisation ODF et celle de OXML ?, 'fin je dis ça hein ...)

          C'est peut-être trop subtil, mais j'y fais la même différence qu'entre open source et libre : le format ouvert a beau être librement implémentable, son avenir est entièrement décidé par une unique boîte commerciale.

          Ok, donc mozilla*, Qt, mysql, postgresql, etc, ne sont pas libres ?
          Bien bien, je note.


          Tandis que pour le format libre, ses spécifications et son implémentation de référence, donc sont développement, sont libres.
          Mais j'admets que la différence est assez floue (d'autant qu'Adobe autorise l'utilisation de ses brevets).

          Sauf que pour un format et un logiciel, ça n'a rien à voir:
          Un format se doit de rester stable (bon euh d'après wikipedia le PDF est tout sauf stable en fait.), donc une unique boîte commerciale derrière ou pas, ça change rien.
          • [^] # Re: Et en utilisant un format ouvert *et* libre ?

            Posté par . Évalué à 3.


            C'est peut-être trop subtil, mais j'y fais la même différence qu'entre open source et libre : le format ouvert a beau être librement implémentable, son avenir est entièrement décidé par une unique boîte commerciale.

            Ok, donc mozilla*, Qt, mysql, postgresql, etc, ne sont pas libres ?
            Bien bien, je note.


            Je pense qu'il y a une grosse différence avec ceux que tu sites, c'est que l'on peut les forker, leur avenir ne dépend donc pas entièrement de cette boite.
            Hors pour le pdf par exemple, je ne suis pas sûr que ce soit permis (j'ai un gros doute là-dessus).
            • [^] # Re: Et en utilisant un format ouvert *et* libre ?

              Posté par . Évalué à 2.

              Ok, donc avant, MS saymal parce que c'est pas standardisé, maintenant la standardisation saymal parce que MS a obtenu une standardisation. (Ah et sur le plan purement technique, c'est lequel la pire entre la standardisation ODF et celle de OXML ?, 'fin je dis ça hein ...)

              En fait, il y a un avant et un après.
              Auparavant, en effet, j'étais plutôt orienté vers la normalisation, et pour moi, standard ISO était synonyme de qualité technique.

              Aujourd'hui, après avoir vu tout le processus pour qualifier Office OpenXML de standard ISO, et tout le lobbying, les coups en douce et ce qui s'ensuit, désolé, je n'ai plus vraiment confiance.
              Le pire, c'est qu'aujourd'hui j'imagine que parmi les précédents standards dans tous les domaines, de nombreux ont été érigés sur le même mode, et donc je doute de la pertinence de l'ISO, hélas.

              Ce n'est pas deux avis contradictoires que je ressens selon la situation, c'est plutôt l'évolution de mon avis au cours du temps.

              Ok, donc mozilla*, Qt, mysql, postgresql, etc, ne sont pas libres ?
              Bien bien, je note.


              Comme juste au-dessus, il y a une grosse différence, c'est le mode de développement. Tout ceux que tu cites ont un développement ouvert, avec les sources du trunk sur le web, un bugzilla, et on peut les forker comme on veut.

              Chez Adobe, les bibliothèques de référence ne sont même pas ouvertes. Tout ce qu'on peut faire, c'est lire les specs du format. C'est déjà très bien, mais on peut faire mieux.


              Un format se doit de rester stable (bon euh d'après wikipedia le PDF est tout sauf stable en fait.), donc une unique boîte commerciale derrière ou pas, ça change rien.

              C'est vrai. Cependant, le fait qu'il n'y ait qu'une boîte tends à ne lui faire considérer que ses intérêts propres (ce qui est normal, attention, je ne suis pas contre).
              Alors que dans le cas d'une boîte épaulée par une communauté, les choix ne peuvent pas être faits en ignorant les desideratas de cette dernière. Et là, les choix ne peuvent être que plus judicieux et bénéfiques pour tout le monde.

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

    • [^] # Re: Et en utilisant un format ouvert *et* libre ?

      Posté par . Évalué à 4.

      DjVu, c'est sympa, mais il y a plusieurs grosses restrictions :

      - risques liés aux brevets : il y a des doutes là-dessus, mais vu qu'il y a des brevets sur la compression par ondelettes, DjVu est peut-être entaché par des brevets logiciels ;

      - pdf2djvu est assez basique : certes, il convertir des PDF en DjVu, mais il ne le fait pas très bien, et j'ai vu des différences très importantes entre mes .pdf et mes .djvu (qui étaient du coup très très moches). Une alternative existe : gsdjvu [1]. La qualité obtenue est bien meilleure (pas de différence visible entre mes .pdf et .djvu, même en zoomant à 400% et plus), mais gsdjvu a des problèmes de licence (mix de code sous CPL et GPL).

      - DjVu est un format bitmap alors que PDF est surtout un format vectoriel. Ok, il peut aussi stocker du texte, comme PDF, et il peut stocker des images en très haute résolution, mieux que PDF, mais il ne peut pas stocker de données vectorielles... et ça, c'est très embêtant.

      Au final, DjVu est très bien pour stocker des images bitmap en haute résolution... mais pour beaucoup d'applications où il y a besoin de graphiques vectoriels (publis scientifiques par exemple), il ne convient pas.

      --
      [1] http://djvu.sourceforge.net/gsdjvu.html
      • [^] # Re: Et en utilisant un format ouvert *et* libre ?

        Posté par . Évalué à 3.

        En effet, je suis au courant de ces limitations qui n'en sont d'ailleurs pas tout à fait, mais plutôt des choix techniques pour atteindre le but fixé : l'archivage de documents scannés. Et de ce point de vue, le but est atteint.

        C'est juste qu'en sus de cet usage prévu, on peut lui en attribuer d'autres, comme le remplacement de PDF pour de nombreuses situations.

        Je suis d'accord, pdf2djvu est relativement basique, mais il n'en reste pas moins qu'il y a moyen de jouer finement sur certains paramètres (voir les options bg-slices et bg-subsample de la page de man) et augmenter énormément la qualité tout en conservant une taille largement en deça de celle du PDF.
        Je parle en connaissance de cause car j'ai eu l'occasion de pas mal bidouiller.
        Le problème est que ça se fait au cas par cas, fichier par fichier; il n'y a pas de réglage générique.

        Pour gsdjvu, je suis au courant de son problème de licence, c'est pour cela qu'il n'est pas packagé dans Debian; du coup je n'ai jamais pu l'essayer.
        C'est aussi pour cela qu'il n'y a pas de solution simple pour convertir un document PostScript par exemple.

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

        • [^] # Re: Et en utilisant un format ouvert *et* libre ?

          Posté par . Évalué à 2.

          En effet, je suis au courant de ces limitations qui n'en sont d'ailleurs pas tout à fait, mais plutôt des choix techniques pour atteindre le but fixé : l'archivage de documents scannés. Et de ce point de vue, le but est atteint.
          Absolument ! Pour ça, oui, oui et oui, DjVu est excellent.

          Je suis d'accord, pdf2djvu est relativement basique, mais il n'en reste pas moins qu'il y a moyen de jouer finement sur certains paramètres (voir les options bg-slices et bg-subsample de la page de man) et augmenter énormément la qualité tout en conservant une taille largement en deça de celle du PDF.
          Je parle en connaissance de cause car j'ai eu l'occasion de pas mal bidouiller.

          Je te crois sur parole... Je l'ai juste testé sur quelques fichiers, et comme ça ne me convenait pas, je suis passé à gsdjvu qui a tout de suite donné de meilleurs résultats.

          Le problème est que ça se fait au cas par cas, fichier par fichier; il n'y a pas de réglage générique.

          Du coup c'est assez limité pour pdf2djvu comme outil de conversion de masse ;-)

          Ceci dit c'est un format d'avenir, et j'espère sincèrement qu'il arrivera à percer : il le mérite.
  • # Mnogosearch ?

    Posté par . Évalué à 1.

    Salut,

    A voir ton journal, ça marche un peu comme Swich, avec indexation en base MySQL.
    Ca marche en ligne de commande pour indexer tout les documents que tu veux, ajouter un document à la base, supprimer un document, chercher dans un document etc.

    Ca me semble adapté à ton besoin.
    Bon courage,

Suivre le flux des commentaires

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