Skip to main content

An API wrapper for Genshin Impact.

Project description

genshin.py

Downloads PyPI package Last Commit Coverage Discord

Modern API wrapper for Genshin Impact & Honkai Impact 3rd built on asyncio and pydantic.


Documentation: https://thesadru.github.io/genshin.py

API Reference: https://thesadru.github.io/genshin.py/pdoc/genshin

Source Code: https://github.com/thesadru/genshin.py


The primary focus of genshin.py is convenience. The entire project is fully type-hinted and abstracts a large amount of the api to be easier to use.

Key features:

  • All data is in the form of Pydantic Models which means full autocompletion and linter support.
  • Requests are significantly faster thanks to proper usage of asyncio.
  • Chinese and Engrish names returned by the API are renamed to simpler English fields.
  • Supports the majority of the popular endpoints.
  • Cleanly integrates with frameworks like FastAPI out of the box.

Note: This library is a successor to genshinstats - an unofficial wrapper for the Genshin Impact api.

Requirements

  • Python 3.8+
  • aiohttp
  • Pydantic
pip install genshin

Example

A very simple example of how genshin.py would be used:

import asyncio
import genshin

async def main():
    cookies = {"ltuid": 119480035, "ltoken": "cnF7TiZqHAAvYqgCBoSPx5EjwezOh1ZHoqSHf7dT"}
    client = genshin.Client(cookies)

    data = await client.get_genshin_user(710785423)
    print(f"User has a total of {data.stats.characters} characters")

asyncio.run(main())

Contributing

Any kind of contribution is welcome. Please read CONTRIBUTING.md to see what you need to do to make a contribution.

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

genshin-1.6.2.tar.gz (88.5 kB view details)

Uploaded Source

Built Distribution

genshin-1.6.2-py3-none-any.whl (120.6 kB view details)

Uploaded Python 3

File details

Details for the file genshin-1.6.2.tar.gz.

File metadata

  • Download URL: genshin-1.6.2.tar.gz
  • Upload date:
  • Size: 88.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for genshin-1.6.2.tar.gz
Algorithm Hash digest
SHA256 b238fa5b4e735d61988ca459efb9b8e71054a3dd46daa25e2a04189a5f07cbd1
MD5 84a5775bcad8f13e484de54fb3db1b9e
BLAKE2b-256 656ca7db8122df3e4855f9d93e0a7716ac765d1933d32d36cd156cd71bfab42b

See more details on using hashes here.

File details

Details for the file genshin-1.6.2-py3-none-any.whl.

File metadata

  • Download URL: genshin-1.6.2-py3-none-any.whl
  • Upload date:
  • Size: 120.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for genshin-1.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ba119dbc67632e8584d1b4a08fb83ec3640ef1aa5c5b915938b0a7e69733840e
MD5 a81ce47c010f8e10e245925baf719d92
BLAKE2b-256 4bfa15a69de1607258f3218ec715d0d225eb1d9697244aa80e24425fc92fd8f7

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