Skip to main content

A simple API wrapper for predicting the age, gender, and country of a person by their name.

Project description

Asynchronous Python wrapper for (Genderize, Nationalize, Agify)

A simple API for predicting the age, gender, and country of a person by their name.

The API is free for up to 1000 names/day. No sign up or API key needed. So go ahead and try it out.

Instalation

pip install agify

Usage example:

async version:

from agify import AsyncNameAPI
g = AsyncNameAPI(["Igor", "Alex"], mode="*")
print(asyncio.run(g.get_names_info()))
# ->
{'Alex': {'age': 45,
          'count': 1114390,
          'country': [{'country_id': 'CZ', 'probability': 0.082},
                      {'country_id': 'UA', 'probability': 0.045},
                      {'country_id': 'RO', 'probability': 0.033},
                      {'country_id': 'RU', 'probability': 0.031},
                      {'country_id': 'IL', 'probability': 0.028}],
          'gender': 'male',
          'probability': 0.96},
 'Igor': {'age': 49,
          'count': 168019,
          'country': [{'country_id': 'UA', 'probability': 0.169},
                      {'country_id': 'RS', 'probability': 0.113},
                      {'country_id': 'RU', 'probability': 0.093},
                      {'country_id': 'HR', 'probability': 0.084},
                      {'country_id': 'SK', 'probability': 0.062}],
          'gender': 'male',
          'probability': 1.0}}

a = AsyncNameAPI(["Ivan"], "gender")
print(asyncio.run(a.get_names_info()))
# ->
{'Ivan': {'count': 425630, 'gender': 'male', 'probability': 1.0}}

a = AsyncNameAPI()
print(asyncio.run(a.get_limit_remaining()))
# ->
987

usual version:

from agify import NameAPI
g = NameAPI(["Igor", "Alex"], mode="*")
print(g.get_names_info())
# ->
{'Alex': {'age': 45,
          'count': 1114390,
          'country': [{'country_id': 'CZ', 'probability': 0.082},
                      {'country_id': 'UA', 'probability': 0.045},
                      {'country_id': 'RO', 'probability': 0.033},
                      {'country_id': 'RU', 'probability': 0.031},
                      {'country_id': 'IL', 'probability': 0.028}],
          'gender': 'male',
          'probability': 0.96},
 'Igor': {'age': 49,
          'count': 168019,
          'country': [{'country_id': 'UA', 'probability': 0.169},
                      {'country_id': 'RS', 'probability': 0.113},
                      {'country_id': 'RU', 'probability': 0.093},
                      {'country_id': 'HR', 'probability': 0.084},
                      {'country_id': 'SK', 'probability': 0.062}],
          'gender': 'male',
          'probability': 1.0}}

a = NameAPI(["Ivan"], "gender")
print(a.get_names_info())
# ->
{'Ivan': {'count': 425630, 'gender': 'male', 'probability': 1.0}}

a = NameAPI()
print(a.get_limit_remaining())
# ->
987

License: MIT

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

agify-0.2.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

agify-0.2.0-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file agify-0.2.0.tar.gz.

File metadata

  • Download URL: agify-0.2.0.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for agify-0.2.0.tar.gz
Algorithm Hash digest
SHA256 84652c15e0e85d3b946f346aecdc093560cb43a1bc061499de9b3e1111d4f9b7
MD5 5d3ef8cb2b40670709ed41753b157638
BLAKE2b-256 01c19931e461cf824af1394870fb8c98803d0dcec7389308ab57485338c50faa

See more details on using hashes here.

File details

Details for the file agify-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: agify-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for agify-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3930fa17eda578398cf091041aa1f72002c9d106d74460eec2f16bfc24722779
MD5 abad614881e55ccfde1128fcd5e3be0d
BLAKE2b-256 334dc6c650ff3be11889593e19b266f97cdc0b420807b0bfa11ec816b27e5d4a

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