An API wrapper around the PythonAnywhere's API.
Project description
Overview
An API wrapper around the PythonAnywhere's API. The name stands for py
thona
nyw
herew
rapper. The key-features are,
- Modern API wrapper using the
async
/await
syntax - 100% API coverage, 100% tested
- Object-oriented
- Fully documented & Typehinted
- Caching handled
We strive to provide an easy-to-use, batteries included modern API wrapper. The documentation can be found here, for help please open an issue.
Installation
The required Python version for the module is
3.9
or above.
# Linux/MacOS
python3 -m pip install pyaww
# Windows
py -m pip install pyaww
Quick Example
To use this module, you first have to create an API key over here.
After you've done that, copy the credentials and provide them to the pyaww.User
class. It is advised that you do
not make your token public within the code, instead, you should store it securely
using a package like python-dotenv
.
This module is asynchronous meaning it utilises the async
/ await
syntax.
import pyaww
import asyncio
# construct the user class
client = pyaww.User("sexychad420", "my-python-anywhere-token")
async def cpu() -> dict:
"""Gets the CPU information."""
return await client.get_cpu_info()
asyncio.run(cpu())
Using this module within PythonAnywhere webapps might be a little tricky as they only support WSGI at the moment.
However, you can run the function calls synchronously with asyncio
module if your desired web framework doesn't
support async syntax. Some back-end frameworks such as flask
support async syntax in the routes, example:
from flask import Flask
import pyaww
app = Flask(__name__)
client = pyaww.User("sexychad420", "my-python-anywhere-token")
@app.route("/")
async def cpu_usage():
return await client.get_cpu_info()
if __name__ == '__main__':
app.run()
If there is no way that you can use the async/await
syntax within your webapp, you can downgrade to >3.0.0
versions
of this module.
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
Built Distribution
File details
Details for the file pyaww-1.0.0.tar.gz
.
File metadata
- Download URL: pyaww-1.0.0.tar.gz
- Upload date:
- Size: 14.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6a214f78a90dd0fe1506db4391e4c3b9c5ebbec625295e76842578c6647bc6bc |
|
MD5 | 2c6cf3f7ac140f9238f889381b65d8bc |
|
BLAKE2b-256 | 396338f54649978ce6e973433331cec477d34d903a698d084f4887e67f2148a8 |
File details
Details for the file pyaww-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: pyaww-1.0.0-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9142edac9983a42b1ecba0f11c9cdc85258d8a42a59889a71c115ddf77faa34 |
|
MD5 | 25315992e0bdb2bde1038c1c484d39ea |
|
BLAKE2b-256 | 008d164b69a77759b0ca7d7cca27b0d361b51f10717728e91e7f4924724c8082 |