Plein texte - wiki Maarch
Transcription
Plein texte - wiki Maarch
Plein texte Sommaire • 1 Résumé • 2 Quels documents peuvent être indexés ? • 3 Comment extraire les données d'un document type PDF-TEXT ? • 4 Arborescence du module plein texte • 5 Config.xml • 6 Pré-requis du moteur lucene • 7 Comment exécuter le script ? ♦ 7.1 Note • 8 Maîtriser le processus full_text • 9 Activer le plein texte dans Maarch Courrier Résumé La lecture plein texte est un module de Maarch qui vous permet de faire de l'indexation avec le moteur Lucene. Nous utilisons la version PHP de Lucene mise en place avec le framework ZEND. Ce module propose un batch qui permettra d'activer la recherche plein texte. Ce script est exécuté pour toutes les collections de Maarch et fonctionne sur Linux ET Windows. Cela va extraire les données de tous les documents compatible avec le plein texte. Quels documents peuvent être indexés ? Seulement avec les documents de type PDF-TEXT ! (pdf avec reconnaissance de données). Comment extraire les données d'un document type PDF-TEXT ? Avec le logiciel open source pdftotext (inclus dans le framework de Maarch pour windows, vous devez l'installer pour linux). Arborescence du module plein texte /full_text /log /2009_02_18 full_text_2009_02_18 10-11-47.log ... ... /scripts launch_fulltext_documents.bat launch_fulltext_documents.sh launch_fulltext_invoices.bat launch_fulltext_invoices.sh /tmp ... /xml config_documents.xml config_invoices.xml class_db.php lucene_full_text_engine.php Config.xml <ROOT> <CONFIG> <BASE_DIRECTORY>C:\xampp\htdocs\maarch_courrier\modules\full_text\</BASE_DIRECTORY> <INDEX_FILE_DIRECTORY>C:\Maarch\indexes\coll_2\</INDEX_FILE_DIRECTORY> <LOCATION>localhost</LOCATION> <DATABASE_PORT>3306</DATABASE_PORT> <DATABASE>maarch_v3</DATABASE> <DATABASETYPE>MYSQL</DATABASETYPE> <USER_NAME>root</USER_NAME> <PASSWORD></PASSWORD> <TABLE_NAME>res_invoices</TABLE_NAME> <FULLTEXT_COLUMN_NAME>fulltext_result</FULLTEXT_COLUMN_NAME> <MAARCH_TOOLS_PATH>C:\xampp\htdocs\maarch_courrier\apps\maarch_sample\tools\</MAARCH_TOOLS_PATH> <MAX_BATCH_SIZE>10</MAX_BATCH_SIZE> </CONFIG> </ROOT> Pré-requis du moteur lucene Vous devez créer un dossier d'indexation par collection (et donc un fichier de config par collection): • coll_1 : C:\Maarch\indexes\coll_1\ • coll_2 : C:\Maarch\indexes\coll_2\ (L'identifiant ID d'un document dans Lucene correspond au res_id d'une collection). Comment exécuter le script ? Dans le dossier script du module full_text vous trouverez tous les fichiers nécessaires au lancement du module. Vous devez modifier ces fichiers pour lancer correctement le plein texte. launch_fulltext_documents.bat contient : "C:\xampp\php\php.exe" C:\xampp\htdocs\maarch_courrier\modules\full_text\lucene_full_text_engine.php C:\xampp\htdocs\maarch_courrier\modules\full_text\xml\config_documents.xml (à vous de modifier avec les chemins corrects). Note Pour une automatisation de la tâche, ce script peut être lancé dans le planificateur de tâche Windows ou dans la table cron de Linux. Maîtriser le processus full_text Le résultat de l'indexation des pdf peut être vérifié dans la base de données grâce à la table res_letterbox à la colonne fulltext_result : • 1: extraction réussi • -1: fichier introuvable • -2: extension de fichier non compatible • 2: aucun résultat pour cette extraction Activer le plein texte dans Maarch Courrier Rendez-vous dans le fichier de configuration de Maarch (apps/maarch_entreprise/xml/config.xml). Ajoutez le tag <path_to_lucene_index> dans la collection voulue: <COLLECTION><== list of the collection used in Maarch ==> <id>coll_1</id><== id of the collection ==> <label>_DOCUMENTS</label><== label of the collection : var defined in apps/maarch_entreprise/fr.php ==> < table>res_x</table><== table of the collection ==> <view>res_view</view><== view of the collection ==> <index_file>index.xml</index_file><== file of the custom index ==> <script_add>index_documents.php</script_add><== script to add a document to the collection ==> <script_search>search_with_folder.php</script_search><== script to search the collection ==> <script_search_result>list_results_documents.php</script_search_result><== script to show the list of search results ==> <script_details>details_documents.php</script_details><== script to show the details page ==> <path_to_lucene_index>C:\Maarch\indexes\coll_1\</path_to_lucene_index> </COLLECTION>