Skip to main content

Friendly fork of pyLibravatar for async support.

Project description

A libravatar client for Python thats built on modern Technology

Pepy.tech Badge PyPi Version Badge PyPI - Python Version PyPI - License Code Style Lines of Code

Introduction :

Friendly fork of pyLibravatar.

Why did I write this library:

While working on the Libravatar client project I came across the well built pyLibravatar library. The last update was at Jun 28, 2015 ( Thats over 6 years ago when I was writing this ). So thats why I decided to write this library. It mimics the API ( and functionality ) of pyLibravatar but with asyncio spice.

Why use "libravatar-py" ?

  • Provides API for different kinds of usage.
  • Built with modern techknology.
  • No unnecessary codes. ( My goal was to keep the library as small as possible )
  • Is very minimal. ( Only provides 4 functions )
  • Fully Fedarated and feature rich.

Why shouldn't you use "libravatar-py" ?

  • I donno ? If you do please submit a Pull Request

User guide :

Installation :

Install with pip from pypi (No extra dependencies):

$ python -m pip install libravatar-py

Install with pip from github ( Development | Not Recommended for Production ):

$ python -m pip install https://codeload.github.com/baseplate-admin/libravatar-py/zip/refs/heads/main

Usage:

Call any of these 4 methods.

libravatar_url function ( This will essentially return the base url of the image ) :

from libravatar import libravatar_url

url = libravatar_url(email="someone@example.com")
print(url)
# https://seccdn.libravatar.org/avatar/16d113840f999444259f73bac9ab8b10

libravatar_img_tag function ( This will wrap the libravatar url in a <img /> tag. You can also customize _alt text ) :

from libravatar import libravatar_img_tag

url = libravatar_img_tag(email="someone@example.com")
print(url)
# <img src=https://seccdn.libravatar.org/avatar/16d113840f999444259f73bac9ab8b10 alt='Avatar for someone@example.com' />

libravatar_raw_image function ( This will return the Libravatar image in a binary form ) :

from libravatar import libravatar_raw_image

res = libravatar_raw_image(email="someone@example.com")
print(res)
# Large binary string.
# To load it.
from PIL import Image
from io import BytesIO

res = Image.open(BytesIO(res))

libravatar_raw_query function ( Essentially passes the {args, kwargs} to httpx_get_avatar ):

from libravatar import libravatar_raw_image
# Note this this must be called from an async function
res = await libravatar_raw_query(email="someone@example.com", {})
# All httpx variables available in res

Contributing :

If you like this project add a star. If you have problems or suggestions please put them in the Issue Tracker. If you like to add features. Fork this repo and submit a Pull Request. 😛

Updates :

The library is feature complete ( in my opinion ).

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

libravatar_py-1.0.1.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

libravatar_py-1.0.1-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file libravatar_py-1.0.1.tar.gz.

File metadata

  • Download URL: libravatar_py-1.0.1.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.0 Windows/11

File hashes

Hashes for libravatar_py-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a7ecb9f2cb2cab4487bed2c0a0974a9da2e2db85e37fa1d5d6d844ea7f86bb1f
MD5 fa56285bdcf4035fca3161a8857ec321
BLAKE2b-256 648b857d4ac9a91242b695190959735f85c19709905bf386dc7f22df8da3ddc3

See more details on using hashes here.

File details

Details for the file libravatar_py-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: libravatar_py-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.0 Windows/11

File hashes

Hashes for libravatar_py-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b2339bbeac680abd356b647288615ae47d6907c3f66d0075218a3a802806ef23
MD5 873d214acc0295a6f0cb677a0c32a0da
BLAKE2b-256 8fce48e35c13e89cfb23323cc2b6aa44ff62c29e6a3a7a1a5a610263a108a35f

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