Skip to main content

An API wrapper for Genshin Impact.

Project description

genshin.py

Modern API wrapper for Genshin Impact built on asyncio and pydantic.


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

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.0.0.tar.gz (60.9 kB view details)

Uploaded Source

Built Distribution

genshin-1.0.0-py3-none-any.whl (84.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: genshin-1.0.0.tar.gz
  • Upload date:
  • Size: 60.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for genshin-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f45a40212348ec7ae01898e9657151ea70cfb0a3f8bdfced81d36481f2cc0a74
MD5 17ac1d40c96c2d11ddd8874c25511b63
BLAKE2b-256 77ecc2bab42a119b9ee8ee0c191c8b7f650b4a5b48fdae33aa830111545fb46c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: genshin-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 84.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for genshin-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 38fb700d427170ce996984862ac85a3ed41595953b42e31512bbd10e4a6f766f
MD5 bcce0911ebed0e1cfd766f9a785a19f5
BLAKE2b-256 56eaeb021c769e5a79371bbcc155b1a837c0cf53f8f74cccfcbb038012c45d56

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