Skip to main content

Mimesis: fake data generator.

Project description

Mimesis - Fake Data Generator


https://raw.githubusercontent.com/lk-geimfari/mimesis/master/media/readme-logo.png

Description

Travis CI Documentation Status Code Coverage Package version Python version

Mimesis is a package for Python, which helps generate big volumes of fake data for a variety of purposes in a variety of languages. The fake data could be used to populate a testing database, create beautiful JSON and XML files, anonymize data taken from production and etc.

Installation

To install mimesis, simply use pip:

[env] ~ ⟩ pip install mimesis

Getting started

This library is really easy to use and everything you need is just import an object which represents a type of data you need (we call such object Provider).

In example below we import provider Person, which represents data related to personal information, such as name, surname, email and etc:

>>> from mimesis import Person
>>> person = Person('en')

>>> person.full_name()
'Antonetta Garrison'

>>> person.occupation()
'Backend Developer'

>>> person.telephone()
'1-408-855-5063'

More about the other providers you can read in our documentation.

Locales

Mimesis currently includes support for 33 different locales. You can specify a locale when creating providers and they will return data that is appropriate for the language or country associated with that locale.

Let’s take a look how it works:

>>> from mimesis import Person
>>> from mimesis.enums import Gender

>>> de = Person('de')
>>> en = Person('en')

>>> de.full_name(gender=Gender.FEMALE)
'Sabrina Gutermuth'

>>> en.full_name(gender=Gender.MALE)
'Layne Gallagher'

Providers

Mimesis support over twenty different data providers available, which can produce data related to people, food, computer hardware, transportation, addresses, and more.

See API Reference for more info.

Generating structured data

You can generate dictionaries which can be easily converted to any format you want (JSON/XML/YAML etc.) with any structure you want.

Just use object Field() as shown below:

>>> from mimesis.schema import Field, Schema
>>> from mimesis.enums import Gender
>>> _ = Field('en')
>>> description = (
...     lambda: {
...         'id': _('uuid'),
...         'name': _('text.word'),
...         'version': _('version', pre_release=True),
...         'timestamp': _('timestamp', posix=False),
...         'owner': {
...             'email': _('person.email', key=str.lower),
...             'token': _('token_hex'),
...             'creator': _('full_name', gender=Gender.FEMALE),
...         },
...     }
... )
>>> schema = Schema(schema=description)
>>> schema.create(iterations=1)

Output:

[
  {
    'id': '7a41f446-57a8-ec17-b9ad-367742251679',
    'name': 'desert',
    'version': '7.3.7-alpha.6',
    'timestamp': '2026-06-06T14:00:52Z',
    'owner': {
      'email': 'damaged1829@gmail.com',
      'token': 'acfd799af9b46e5560a51dabace593033171ec81e997905acfc602c93a741735',
      'creator': 'Keena Hendricks'
    }
  }
]

See Schema and Fields for more info.

Documentation

You can find the complete documentation on the Read the Docs.

It is divided into several sections:

You can improve it by sending pull requests to this repository.

How to Contribute

  1. Take a look at contributing guidelines.

  2. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.

  3. Fork the repository on GitHub to start making your changes to the your_branch branch.

  4. Add yourself to the list of contributors.

  5. Send a pull request and bug the maintainer until it gets merged and published.

License

Mimesis is licensed under the MIT License. See LICENSE for more information.

Project details


Download files

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

Source Distribution

mimesis-4.0.0.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

mimesis-4.0.0-py3-none-any.whl (2.8 MB view details)

Uploaded Python 3

File details

Details for the file mimesis-4.0.0.tar.gz.

File metadata

  • Download URL: mimesis-4.0.0.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.3

File hashes

Hashes for mimesis-4.0.0.tar.gz
Algorithm Hash digest
SHA256 d59ca48d4118d391704a525cef4e33fa219f3d9c4f9a95b7ec2a0e0c88e048a4
MD5 a3ec4ffc3f71c2d353b349702afd1700
BLAKE2b-256 65033972d7114b1f3736b7826a4180ad6c802ba7e726c3133191719e353b8a64

See more details on using hashes here.

File details

Details for the file mimesis-4.0.0-py3-none-any.whl.

File metadata

  • Download URL: mimesis-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 2.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.6.3

File hashes

Hashes for mimesis-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9a4f001f95b9cceb419266e28b422e67fae71995e16a6ab641ff14dd139f5fa3
MD5 03b0ba987776a8cc3a8e8ac3f9586735
BLAKE2b-256 5daedce547c3017c437dc03c49d36a7877fade934da9a1d0c91695844213ac5a

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