skillfed

httptools

A collection of framework independent HTTP protocol utils.

httptools Permissive license MIT Active 1,322 v0.8.0 released

Install

httptools on PyPI

pip

pip install httptools

uv

uv add httptools

poetry

poetry add httptools

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.9)
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance actively maintained — 80 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: httptools-0.8.0-cp310-cp310-macosx_10_9_universal2.whl; httptools-0.8.0-cp310-cp310-macosx_11_0_arm64.whl; httptools-0.8.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; httptools-0.8.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; httptools-0.8.0-cp310-cp310-musllinux_1_2_aarch64.whl; httptools-0.8.0-cp310-cp310-musllinux_1_2_x86_64.whl; httptools-0.8.0-cp310-cp310-win_amd64.whl; httptools-0.8.0-cp311-cp311-macosx_10_9_universal2.whl; httptools-0.8.0-cp311-cp311-macosx_11_0_arm64.whl; httptools-0.8.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; httptools-0.8.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; httptools-0.8.0-cp311-cp311-musllinux_1_2_aarch64.whl; httptools-0.8.0-cp311-cp311-musllinux_1_2_x86_64.whl; httptools-0.8.0-cp311-cp311-win_amd64.whl; httptools-0.8.0-cp312-cp312-macosx_10_13_universal2.whl; httptools-0.8.0-cp312-cp312-macosx_11_0_arm64.whl; httptools-0.8.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; httptools-0.8.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; httptools-0.8.0-cp312-cp312-musllinux_1_2_aarch64.whl; httptools-0.8.0-cp312-cp312-musllinux_1_2_x86_64.whl

Development Status :: 5 - Production/StableEnvironment :: Web EnvironmentIntended Audience :: DevelopersOperating System :: MacOS :: MacOS XOperating System :: POSIXProgramming Language :: Python :: 3

About httptools

from the package's own PyPI description — quoted content, verbatim

Tests (image)

httptools is a Python binding for the nodejs HTTP parser.

The package is available on PyPI: pip install httptools.

APIs

httptools contains two classes httptools.HttpRequestParser, httptools.HttpResponseParser (fulfilled through llhttp) and a function for parsing URLs httptools.parse_url (through http-parse for now). See unittests for examples.

```python

class HttpRequestParser:

def __init__(self, protocol):
    """HttpRequestParser

    protocol -- a Python object with the following methods
    (all optional):

      - on_message_begin()
      - on_url(url: bytes)
      - on_header(name: bytes, value: bytes)
      - on_headers_complete()
      - on_body(body: bytes)
      - on_message_complete()
      - on_chunk_header()
      - on_chunk_complete()
      - on_status(status: bytes)
    """

def get_http_version(self) -> str:
    """Return an HTTP protocol version."""

def should_keep_alive(self) -> bool:
    """Return ``True`` if...

Read as markdown · JSON record · Source repository · Homepage

Similar packages