Skip to main content

Text anonymization tool

Project description

PrivMasker

PrivMasker, to narzędzie do anonimizacji danych osobowych i wrażliwych w dokumentach. Biblioteka umożliwia automatyczną detekcję oraz szybkie i skuteczne maskowanie danych osobowych i wrażliwychw różnego typu dokumentach. W zależności od rodzaju tekstu i preferencji użytkownika możliwy jest opcjonalny wybór maskowanych komponentów:

  • imię i nazwisko
  • dane kontaktowe (nr. telefonów, adresy e-mail)
  • adresy fizyczne
  • daty
  • numery identyfikacyjne
  • kwoty

Instalacja

1. Zainstaluj PrivMaskera

pip install priv_masker

2. Pobierz i zainstaluj model Spacy

  • pobierz pl_nask 0.0.5
  • zainstaluj:
python -m pip install <PATH_TO_MODEL/pl_nask-0.0.5.tar.gz>

Użycie

import spacy
from priv_masker import add_pipeline, analyse_text, AnalyseOut

# dostępne maski (False - wyłączone)
masked_components = {
    'date_mask': True,
    'persname_mask': True,
    'contact_mask': True,
    'address_mask': True,
    'id_numbers_mask': True,
    'cash_mask': True,
    'orgname_mask': True
}

nlp = spacy.load('pl_nask')
nlp = add_pipeline(nlp)

text = "Halina Kowalska (tel. 228595959, adres e-mail: halina.kowalska@xyz.com), reprezentująca Stowarzyszenie Przedsiębiorców Polskich, zamieszkała w Warszawie przy ulicy Juliusza Słowackiego 13/13, identyfikująca się numerem PESEL 76121305873, złożyła w dniu 12 sierpnia 2022 oświadczenie wyjaśniające i uiściła karę grzywny w wysokości 500 złotych."

masked_text = analyse_text(text, nlp, masked_components, out=AnalyseOut.TEXT)
# [XXX] [XXX] (tel. [XXX], adres e-mail: [XXX]), reprezentująca [XXX] [XXX] [XXX], zamieszkała w [XXX] przy [XXX] [XXX] [XXX] [XXX], identyfikująca się numerem PESEL [XXX], złożyła w dniu [XXX] [XXX] [XXX] oświadczenie wyjaśniające i uiściła karę grzywny w wysokości [XXX] złotych.

doc = analyse_text(text, nlp, masked_components, out=AnalyseOut.DOC)  # obiekt Spacy

Wersja

v0.0.4

  • Dodanie kodu PrivMaskera
  • Dodanie dokumentacji
  • Dodanie licencji
Poprzednie wersje

Implementacja

Szczegółowe informacje na temat biblioteki umieszczone są w dokumentacji.

Kontakt

Adam Nowakowski adam.nowakowski@nask.pl | Inez Okulska inez.okulska@nask.pl

Copyright (C) 2022 NASK PIB

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

priv_masker-0.4-py3-none-any.whl (17.1 MB view details)

Uploaded Python 3

File details

Details for the file priv_masker-0.4-py3-none-any.whl.

File metadata

  • Download URL: priv_masker-0.4-py3-none-any.whl
  • Upload date:
  • Size: 17.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.9

File hashes

Hashes for priv_masker-0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b6a18c76b64338ba028bcab32f5d4b6b6326ac7b4298a950d447a0223574b7cb
MD5 2b32780e5cb8a0c818f1572ea6fd5e16
BLAKE2b-256 2011a7757c7a235fa2288fdffa9f705f3f9015079b22594b5a65b38ed7ffd0e8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page