Skip to main content

NER-API

Ce package permet le traitemnt du texte , l'extraction des entités(inclus code swift et code imo), ainsi que le highlighting des ces entités présente dans un fichier pdf

Installation

pip install myNer

Usage/Exemples

Preprocessing:

from myner  import text_preprocessing
text_preprocessing.text_preprocessing(text,accented=True,stopw=True,punctuation=True,lowercase=True,lemmatize=True,spelling=True,expand_contraction=True,urls=True)

cette fonction permet de traiter le text en utilisant les filtres présents comme argument

from myner  import text_preprocessing
text_preprocessing.spacy_preprocessing(text,lowercase=True,stopw=True,punctuation=True,alphabetic=True,lemmatize=True,)

Permet de faire du traitement du texte à l'aide de spacy

Après le preprocessing tout les caractères sont en miniscule, les retour en ligne et les multiples espaces sont éliminés , seulement un seul espace est ajouté lorsqu'on reconstitue le texte, les caractères spéciaux sont supprimés ,meme les "-" et les "+" sont supprimés dans les codes et les references ce qui peut poser problème, toutefois les fonctions du preprocessing possèdent des filtres qu'on peut ajuster selon le cas

Méthodes d'extraction des entités:

on a utilisé dans ce projet :

1)reconnaissance à l'aide d'expression régulière:

ner.find_imo(text)
ner.find_swift(text)
  1. reconnaissance à l'aide de composante ner du modèle linguistique de spacy:
ner.ner_spacy(text)
  1. reconnaissance à l'aide des dictionnaires et du fuzzy matching:
ner.ner_dicts(text,db,table)

Après avoir créer une base de données postgresql pour les ports , banques et navires , on utilise cette db pour extraire les entités de ce type. Sauf que cette méthode se montre dépendante des données présentes dans la base de données(par exemple si le nom compet d'une banque est présent dans la base, un nom courant de la banque ne sera pas reconnu )

Pdf highlighting:

from myner import highlight_pdf 
highlight_pdf.output(input_file,output_path)

cette fonction prend en argument le chemin vers un fichier pdf , et le chemin de l'output, extrait les entités,les highlight , et enregistre le pdf highlighté dans le dossier courant sous le nom "output.pdf"

Il existe aussi deux fonctions pour l'encodage du pdf en base64 et l'inverse,pour permettre l'interaction avec l'API

highlight_pdf.pdf_to_base64(pdf)
highlight_pdf.base64_to_pdf(base64)

batch preprocessing:

highlight_pdf.batch_ner(dir_path): prend le chemin vers un dossier contenant des pdf et execute du batch preprocessing sur ces derniers

API Reference

get_entities(text)

Prend un texte(String) et retourne ses entités

highlight_pdf(pdf)

Prend le pdf encodé en base64 et retourne le pdf highlighté encodé en base64 ainsi que les entités détectées sous format : # positions format: a dict containing entities as keys, and the values a list of tuples:(list of Rect positions,page number)

Release files for myNer 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for myNer 0.0.6
File Size Uploaded
myner-0.0.6.tar.gz 134.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for myNer 0.0.6
File Interpreter ABI Platform
myner-0.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 227.7 kB

Release files / myner-0.0.6.tar.gz

Download URL myner-0.0.6.tar.gz
Size 134.3 kB
Tags Source
SHA-256 checksum
How to use checksums
51422d857987020f5091e1c7114b6208677f642d973da2011a28b3642a1e82fc
BLAKE2b-256 checksum
How to use checksums
2f82ae174fc3b0e7d29ed9b98fba42bc5cc2917444d5b2d40f4e7f863d7ed9ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.7

Release files / myner-0.0.6-py3-none-any.whl

Download URL myner-0.0.6-py3-none-any.whl
Size 93.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
875df4b5fbc90361f6f91673e463fd3113691a9f66bdb3fb7652beee92de85a0
BLAKE2b-256 checksum
How to use checksums
c68cf8c4cab2f38f12c77b5dd2c7f49dad1c264fd70e53336bef22fb5faa7d50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.7

Release history Release notifications | RSS feed

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page