Skip to main content

Texta Anonymizer

For anonymizing entities in plaintexts.

Installation

pip install texta-anonymizer

From Git

pip install git+https://git.texta.ee/texta/texta-anonymizer-python.git

Testing

python -m pytest -v tests

Documentation

Documentation is available here.

Usage examples

Import Anonymizer and define input data

from texta_anonymizer.anonymizer import Anonymizer

text = """
   A. Hitler läks koos oma sõbra Jossif Staliniga poodi.
   Adolf ostis kolm pakki suitsu ja Jossif neli saia.
   Adolf Hilteri ja J. Stalini majas elab kass.
   Hiljem liitus Hitleriga neli koera.
   Hitteler ja J. Stalen läksid magama.
   Ka Yossif Stalin oli kohal.
   Pärast läks A d o l f HITLER joonistama.
   """

names = [
   {
    "first_name": "Adolf",
    "last_name" : "Hitler"
    },
  {
    "first_name": "Jossif",
    "last_name" : "Stalin"
  }
]

Examples

Example 1: Default anonymization

# -------------------------------------------------------- #
#   Default anonymizer allows:
#       1) fuzzy matching (typos)
#       2) different forms (cases etc.)
#       3) single last name detection
#       4) single first name detection
# -------------------------------------------------------- #

anonymizer = Anonymizer()
anonymized_text = anonymizer.anonymize(text, names)
Output:
>>> print(anonymized_text)
    M.P läks koos oma sõbra F.F-iga poodi.
    M.P ostis kolm pakki suitsu ja F.F neli saia.
    M.P ja F.F-i majas elab kass.
    Hiljem liitus M.P-ga neli koera.
    M.P ja F.F läksid magama.
    Ka F.F oli kohal.
    Pärast läks M.P joonistama.

Example 2: Disable misspelled names replacement

anonymizer = Anonymizer(
                replace_misspelled_names = False
)

anonymized_text = anonymizer.anonymize(text, names)
Output
>>> print(anonymized_text)
   O.W läks koos oma sõbra A.C-ga poodi.
   O.W ostis kolm pakki suitsu ja A.C neli saia.
   O.W Hilteri ja A.C majas elab kass.
   Hiljem liitus O.W-ga neli koera.
   Hitteler ja J. Stalen läksid magama.
   Ka Yossif A.C oli kohal.
   Pärast läks O.W joonistama.

Example 3: Disable replacing single first and last names

anonymizer = Anonymizer(
                replace_single_first_names = False,
                replace_single_last_names = False
)

anonymized_text = anonymizer.anonymize(text, names)
Output
>>> print(anonymized_text)
   T.N läks koos oma sõbra U.W-ga poodi.
   Adolf ostis kolm pakki suitsu ja Jossif neli saia.
   T.N-i ja U.W majas elab kass.
   Hiljem liitus Hitleriga neli koera.
   Hitteler ja U.W läksid magama.
   Ka U.W oli kohal.
   Pärast läks T.N joonistama.

Release files for texta-anonymizer 1.1.2

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

Source distribution (sdist)

Source distribution for texta-anonymizer 1.1.2
File Size Uploaded
texta-anonymizer-1.1.2.tar.gz 23.4 kB Details

Release files / texta-anonymizer-1.1.2.tar.gz

Download URL texta-anonymizer-1.1.2.tar.gz
Size 23.4 kB
Tags Source
SHA-256 checksum
How to use checksums
67ca7f47477af00fdc3d7c3072f37801b4b2ba68044af68c9400e6d85e44b93f
BLAKE2b-256 checksum
How to use checksums
b181f8e3bf89238a1ea544d7662b48c32c7e98a8d15cffc238a1798dc3680042
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.49.0 CPython/3.7.3

Release history Release notifications | RSS feed

This release

1.1.2 This release

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.1

1 release file

1.0.0

1 release file

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