A small simple wrapper around the mystb.in API.
Reason this release was yanked:
Outdated and no longer works.
Project description
MystBin.py!
A small simple wrapper around the MystB.in API.
Features
- -
POST
ing to the API, which will return the provided url. - -
GET
ting from the API, provided you know the URL or paste ID. - -
DELETE
ing from the API, provided the paste is attached to your account. - -
PATCH
ing to the API, provided the paste is attached to your account. - - Ability to pass in a sync or async session / parameter so it is flexible.
- - Write a real underlying Client for this, it will be required for...
- - ... Authorization. Awaiting the API making this public as it is still WIP.
Installation
This project will be on PyPI as a stable release, you can always find that there.
Installing via pip
:
python -m pip install -U mystbin.py
# or for optional sync addon...
python -m pip install -U mystbin.py[requests]
Installing from source:
python -m pip install git+https://github.com/AbstractUmbra/mystbin-py.git #[requests] for sync addon
Usage examples
Since the project is considered multi-sync, it will work in a sync/async environment, see the optional dependency of requests
below.
# async example - it will default to async
import mystbin
mystbin_client = mystbin.Client()
#NOTE: The `api_key` kwarg in the Client constructor is optional.
paste = await mystbin_client.post("Hello from MystBin!", syntax="python")
str(paste)
>>> 'https://mystb.in/<your generated ID>.python'
paste.url
>>> 'https://mystb.in/<your generated ID>.python'
get_paste = await mystbin_client.get("https://mystb.in/<your generated ID>")
str(get_paste)
>>> "Hello from MystBin!"
paste.created_at
>>> datetime.datetime(2020, 10, 6, 10, 53, 57, 556741)
# sync example - we need to pass a session though
import mystbin
import requests
sync_session = requests.Session()
mystbin_client = mystbin.Client(session=sync_session)
#NOTE: The `api_key` kwarg in the Client constructor is optional.
paste = mystbin_client.post("Hello from sync Mystb.in!", syntax="text")
str(paste)
>>> 'https://mystb.in/<your generated ID>.text'
NOTE: There is a timeout of 15s for each operation.
Dependencies
aiohttp
- required
requests
- optional
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mystbin.py-2.1.3.tar.gz
(8.2 kB
view details)
Built Distribution
File details
Details for the file mystbin.py-2.1.3.tar.gz
.
File metadata
- Download URL: mystbin.py-2.1.3.tar.gz
- Upload date:
- Size: 8.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.9.4 Linux/4.19.0-13-amd64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb2ed0dd1612fd0e6f1b0648d5fb75df23761a19c31d245160fb0f58653a7046 |
|
MD5 | 9c210643c2fd377bcb70fb64c21c9c1d |
|
BLAKE2b-256 | 8680691f8b5da679a6ca53e3b65e365168899b4037cbf4b69357649d22e2246e |
File details
Details for the file mystbin.py-2.1.3-py3-none-any.whl
.
File metadata
- Download URL: mystbin.py-2.1.3-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.4 CPython/3.9.4 Linux/4.19.0-13-amd64
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1fc337d02bdadac511a48b08fb5b6a9b0f7ac2c8c206d3de553fc695ede9acef |
|
MD5 | e318faba0ae50c92bfd34a82e0988081 |
|
BLAKE2b-256 | 4ab4dffd069ecc76ae98f450eabe28d16ac0347e7e09ac8e0a8e5f688b30849b |