Skip to main content

Python HTTP client designed to be simple and async context

Project description

badut

Python HTTP client designed to be simple

A zero-dependency HTTP library designed to be simple and async context.

ContributingDocumentationReport Issues


You enjoy using requests or httpx for HTTP client, wanna try badut ?

Features

Badut is a very lightweight library, yet it handle the most of HTTP client needs.

  • Zero Dependencies
  • Connection Timeouts
  • JSON Parsing
  • Follow Redirects
  • And more coming soon..

Prerequisites

NOTE: Python 3.7 or above

Installation

pip install badut / pipenv install badut

Or manual clone this repository

Quick example

  • GET request
import asyncio
from badut import Badut

client = Badut(json=True, timeout=5)

async def main():
    res = await client.get("https://api.github.com/users/sinkaroid")
    print(res)
    
asyncio.run(main())
  • POST request
async def posting():
    res = await client.post("https://httpbin.org/anything",
        data={"Title": "Hello Badut", "Name": "adalah sy"})
    print(res)
    
asyncio.run(posting())

Example with authentication

Some API requires additional authentication

import asyncio
from badut import Badut

client = Badut(json=True, timeout=5,
    headers={
        "User-Agent": "Badut/1.0.1",
        "authorization": "Bot YouRNicET0k3nFr0mDisc0rd.XuIwOw.IXcORO2fO5XXSmugSombong",
    },
)

async def fetch_discord():
    res = await client.get("https://discord.com/api/v9/users/456298243618504707")
    print(res)
    
asyncio.run(fetch_discord())

Documentation

The documentation can be found https://sinkaroid.github.io/badut

Pronunciation

See why badut exists..

id_ID/ba·dut/ — pelawak (dalam pertunjukan dan sebagainya);
You created an Python HTTP module, meanwhile requests and httpx is exist and those libs is more powerful

badut

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

badut-1.0.6.tar.gz (4.0 kB view details)

Uploaded Source

File details

Details for the file badut-1.0.6.tar.gz.

File metadata

  • Download URL: badut-1.0.6.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.27.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.7

File hashes

Hashes for badut-1.0.6.tar.gz
Algorithm Hash digest
SHA256 5a0e6178241e1f93d997a80bfb41698c74b42ebd4fa393975f7894e07b21f6e6
MD5 8a10e5059a2ac5cfab47a8d2e99534e2
BLAKE2b-256 42dd3a1e623d69f33640e562a3af68c040d31a8224b844951b16757c31aa257f

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