Skip to content

Nusab19/pyNekobin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pyNekobin - A Wrapper for Nekobin API

This is a Python package that provides a simple wrapper around the Nekobin API, allowing you to easily paste and retrieve text snippets from the popular pastebin service.

MIT LICENSE Supported Python Versions Pylint Test PyPy Version Code Quality

Installation

You can install the package from pypy using pip:

pip install -U pynekobin

Documentation

Documentation of this package can be found at nusab19.github.io/pyNekobin

The content of the docs website is the same as this README file. :3

Usage

This package is asynchronous and uses httpx under the hood to make HTTP requests. So, you need to use the await keyword with each method call. First, import the Nekobin class and the asyncio library:

from nekobin import Nekobin
import asyncio

Then, create an instance of the Nekobin class:

nb = Nekobin()

To paste text to Nekobin, you can use the paste() method:

async def main():
    result = await nb.paste("Hello, world!")
    
    if result.ok:
        print("Pasted text at:", result.url) # -> Pasted text at: https://nekobin.com/abxajsyas
    else:
        print("Error:",  result.message)     # Error: Nekobin did not fulfil the request

asyncio.run(main())

Similarly, you can use the read() method to retrieve text from Nekobin:

async def main():
    result = await nb.read("https://nekobin.com/abxajsyas")
    
    if result.ok:
        print("Retrieved text:", result.content) # -> Retrieved text: Hello, world!
    else:
        print("Error:", result.message)          # -> Error: Document not found 

asyncio.run(main())

Advanced Usage

As this package uses httpx under the hood, you can pass additional keyword arguments in each method call. You can pass any keyword argument that httpx.AsyncClient may take:

from nekobin import Nekobin
import asyncio

nb = Nekobin(timeout=10, headers={}, follow_redirects=True)

If you want to pass these arguments in each method call, you have that too:

from nekobin import Nekobin
import asyncio

nb = Nekobin()

async def main():
    result = await nb.paste("Hello, world!", timeout=10)
    url = result.url
    print("Pasted at:", url)

    content = (await nb.read(url, timeout=7)).content
    print("Content:", content)

asyncio.run(main())

Contributing

If you encounter any bugs or issues, please feel free to open an issue on the GitHub repository. If you would like to contribute to the development of the package, you can fork the repository and submit a pull request with your changes.

To use this package locally:

git clone https://github.com/Nusab19/pyNekobin
cd pyNekobin
pip install -e .

License

This package is licensed under the MIT License. See the LICENSE file for more information.

Made with ❤ by Nusab Taha from the Universe!

About

Python Wrapper for Nekobin API | nekobin.com

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages