# PyTenno
PyTenno is an asynchronous wrapper for the [warframe.market](https://warframe.market) API, written in Python.
[Read Documentation](https://pytenno.readthedocs.io/en/latest/index.html)
### Disclaimer
PyTenno is not associated with warframe.market or any of its affiliates.
PyTenno is not associated with Digital Extremes or any of its affiliates.
## Installation
### Git
Use your favorite spice of the following:
```bash
py -m pip install git+https://github.com/ShadowMagic896/pytenno.git
```
- [Git-SCM](https://git-scm.com/) is required for direct installation
### PyPi
```bash
py -m pip install pytenno
```
## Requirements
The project's only requirement is aiohttp, which is available on PyPi.
[aiohttp](https://aiohttp.readthedocs.io/en/stable/index.html) >= 3.8.1
## Skill-Set Requirements
### PyTenno Requires Fundamental understanding of the following:
1. Python datatypes, attributes, etc.
2. Asyncrhonous programming in Python (Coroutines, `async`, `await`)
3. Fundamental understanding of context managers in Python (`async with`)
4. How [warframe.market](https://warframe.market) works
5. [Warframe](https://warframe.com/) mechanics
## Examples
### The Following Code Will Be Used in the Examples
```python
import asyncio # To use asynchronous programming
import pytenno
from pytenno.models.enums import Platform # To specify platforms for requests
async def main(): # PyTenno is asynchronous, so it must be done in an asynchronous context
default_language = "en" # Set default response language to English
default_platform = Platform.pc # Set default platform to PC
# Create a client with the default language and platform
# This must be done in an asynchronous context manager (async with ... [as ...])
async with pytenno.PyTenno(default_language, default_platform) as tenno:
... # Example code goes here
if __name__ == "__main__":
asyncio.run(main()) # Create a new asyncio loop and run the coroutine
```
### Log into warframe.market
```python
email = "you@example.com" # Email to account
password = "password123" # Password to account
current_user = await tenno.Auth.login(
email=email,
password=password
) # Log in to warframe.market
# Note: the API stores absoloutely zero information about data passed. All code
# is open-source and available at https://github.com/ShadowMagic896/pytenno
print(current_user.ingame_name) # Print the ingame name of the user that was logged in
```
Raw data
{
"_id": null,
"home_page": "https://github.com/ShadowMagic896/pytenno",
"name": "pytenno",
"maintainer": "Ryan Peckham",
"docs_url": null,
"requires_python": ">=3.10,<4.0",
"maintainer_email": "86629697+ShadowMagic896@users.noreply.github.com",
"keywords": "warframe,market,api,asyncio,aiohttp,wrapper",
"author": "Ryan Peckham",
"author_email": "86629697+ShadowMagic896@users.noreply.github.com",
"download_url": "https://files.pythonhosted.org/packages/f6/2e/78eeba85eeebb1b92d76d7645527e1c21cda025af5e227e2e6979a1fcc35/pytenno-1.3.3.tar.gz",
"platform": null,
"description": "# PyTenno\nPyTenno is an asynchronous wrapper for the [warframe.market](https://warframe.market) API, written in Python.\n\n[Read Documentation](https://pytenno.readthedocs.io/en/latest/index.html)\n\n### Disclaimer\nPyTenno is not associated with warframe.market or any of its affiliates.\nPyTenno is not associated with Digital Extremes or any of its affiliates.\n\n## Installation\n\n### Git\nUse your favorite spice of the following:\n\n```bash\npy -m pip install git+https://github.com/ShadowMagic896/pytenno.git\n```\n- [Git-SCM](https://git-scm.com/) is required for direct installation\n\n### PyPi\n\n```bash\npy -m pip install pytenno\n```\n\n## Requirements\nThe project's only requirement is aiohttp, which is available on PyPi.\n\n[aiohttp](https://aiohttp.readthedocs.io/en/stable/index.html) >= 3.8.1\n\n## Skill-Set Requirements\n\n### PyTenno Requires Fundamental understanding of the following:\n1. Python datatypes, attributes, etc.\n2. Asyncrhonous programming in Python (Coroutines, `async`, `await`)\n3. Fundamental understanding of context managers in Python (`async with`)\n4. How [warframe.market](https://warframe.market) works \n5. [Warframe](https://warframe.com/) mechanics\n\n## Examples\n\n### The Following Code Will Be Used in the Examples\n```python\n\nimport asyncio # To use asynchronous programming\nimport pytenno\nfrom pytenno.models.enums import Platform # To specify platforms for requests\n\nasync def main(): # PyTenno is asynchronous, so it must be done in an asynchronous context\n default_language = \"en\" # Set default response language to English\n default_platform = Platform.pc # Set default platform to PC\n\n # Create a client with the default language and platform\n # This must be done in an asynchronous context manager (async with ... [as ...])\n async with pytenno.PyTenno(default_language, default_platform) as tenno:\n ... # Example code goes here\n \nif __name__ == \"__main__\":\n asyncio.run(main()) # Create a new asyncio loop and run the coroutine\n```\n\n### Log into warframe.market\n```python\n email = \"you@example.com\" # Email to account\n password = \"password123\" # Password to account\n current_user = await tenno.Auth.login(\n email=email,\n password=password\n ) # Log in to warframe.market\n # Note: the API stores absoloutely zero information about data passed. All code\n # is open-source and available at https://github.com/ShadowMagic896/pytenno\n print(current_user.ingame_name) # Print the ingame name of the user that was logged in\n```\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A asynchronous Python library for interacting with the warframe.market API",
"version": "1.3.3",
"project_urls": {
"Bug Tracker": "https://github.com/ShadowMagic896/pytenno/issues",
"Documentation": "https://pytenno.readthedocs.io",
"Homepage": "https://github.com/ShadowMagic896/pytenno",
"Repository": "https://github.com/ShadowMagic896/pytenno"
},
"split_keywords": [
"warframe",
"market",
"api",
"asyncio",
"aiohttp",
"wrapper"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "09ac6a7e189bbc4ab99608e4960b98db61359e3546dff884a81e3bdd3eddc5f3",
"md5": "111a8ab6bdf01e0672f0505d52ad5a2c",
"sha256": "2932f89973163d6a8470004bf7f7a482564d1ef889652e21319ef19ba9017284"
},
"downloads": -1,
"filename": "pytenno-1.3.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "111a8ab6bdf01e0672f0505d52ad5a2c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10,<4.0",
"size": 34992,
"upload_time": "2023-12-08T21:20:06",
"upload_time_iso_8601": "2023-12-08T21:20:06.295463Z",
"url": "https://files.pythonhosted.org/packages/09/ac/6a7e189bbc4ab99608e4960b98db61359e3546dff884a81e3bdd3eddc5f3/pytenno-1.3.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "f62e78eeba85eeebb1b92d76d7645527e1c21cda025af5e227e2e6979a1fcc35",
"md5": "2f5bd82fd7a9dc262bd1727e83d606a6",
"sha256": "b1c074e076213e5f542577fd2b5a22adfb04459a5882d81b9de7cccc18438f94"
},
"downloads": -1,
"filename": "pytenno-1.3.3.tar.gz",
"has_sig": false,
"md5_digest": "2f5bd82fd7a9dc262bd1727e83d606a6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10,<4.0",
"size": 23812,
"upload_time": "2023-12-08T21:20:09",
"upload_time_iso_8601": "2023-12-08T21:20:09.364434Z",
"url": "https://files.pythonhosted.org/packages/f6/2e/78eeba85eeebb1b92d76d7645527e1c21cda025af5e227e2e6979a1fcc35/pytenno-1.3.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-08 21:20:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ShadowMagic896",
"github_project": "pytenno",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "pytenno"
}