MyBotBoxMyBotBox

@yarlisai/file-parsers

Analyse de documents routée par extension — PDF, CSV, DOCX, XLSX, PPTX, HTML, JSON, YAML et plus encore, avec des adaptateurs vendeurs optionnels chargés à la demande.

Analyse de documents routée par extension — PDF, CSV, DOCX, XLSX, PPTX, HTML, JSON, YAML, Markdown et texte brut, avec des adaptateurs vendeurs optionnels chargés à la demande.

Installation

npm install @yarlisai/file-parsers

Les bibliothèques vendeurs sont des dépendances paires optionnelles — installez uniquement celles correspondant aux formats que vous analysez (pdf-parse, csv-parse, mammoth, officeparser, exceljs, cheerio, js-yaml). Chaque adaptateur charge sa bibliothèque vendeur lors du premier traitement de ce format ; JSON, Markdown et le texte brut n'ont besoin d'aucun vendeur.

Pourquoi

@yarlisai/file-parsers suit le contrat port/adaptateur : les consommateurs dépendent d'un port (l'interface FileParser) et la fabrique createParserRegistry() route une extension de fichier vers le bon adaptateur à l'exécution. Ajouter un format se résume à un nouveau fichier d'adaptateur et une entrée de registre.

Utilisation

import { isSupportedFileType, parseBuffer, parseFile } from '@yarlisai/file-parsers'

if (isSupportedFileType('pdf')) {
  const fromDisk = await parseFile('/tmp/report.pdf')
  const fromMemory = await parseBuffer(buffer, 'csv')
}

Le README du package inclut un démarrage rapide complet. mybotbox-platform lui-même est le consommateur de référence — apps/sat/lib/file-parsers/ est une mince couche de ré-exportation de ce package pour la route API d'analyse de fichiers et le processeur de documents de la base de connaissances.

Voir aussi