Skip to main content

miniclient

CI codecov Docs PyPI Python versions License

A minimal python http client that runs JavaScript, without a browser. Meant to be used as a lightweight test client to simulate browser interactions. Embeds a V8 Runtime, DOM, and is designed to run htmx especially well.

Install

uv add miniclient

Example

The snippet below opens a page, submits a search form, clicks a "load more" button and reads the results back. All against a real in-memory DOM running JavaScript (htmx, for example). No browser involved.

from miniclient.page import Page

with Page() as page:
    page.goto("http://localhost:8000/")
    page.find("input[name=q]").fill("htmx")
    page.find("form").requestSubmit()
    page.find("#load-more").click()
    print(len(page.find_all("#results li")), "results")
    print(page.find("#results li:first-child").text)

Check the full documentation: https://marciomazza.github.io/miniclient/

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

miniclient-0.1.3.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

miniclient-0.1.3-py3-none-any.whl (393.8 kB view details)

Uploaded Python 3

File details

Details for the file miniclient-0.1.3.tar.gz.

File metadata

  • Download URL: miniclient-0.1.3.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for miniclient-0.1.3.tar.gz
Algorithm Hash digest
SHA256 6a623ec3ebb497626556d954743e7f3dc4ba0f359519ab9ce97c4c552cf5f827
MD5 a78fb80addf908cc258ec97ed57fe9fb
BLAKE2b-256 b5dab426522f58cc7d477a785de8c4cda207cd15b9d2ed601836a73dbb839dae

See more details on using hashes here.

Provenance

The following attestation bundles were made for miniclient-0.1.3.tar.gz:

Publisher: release.yml on marciomazza/miniclient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file miniclient-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: miniclient-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 393.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for miniclient-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a44d2c588f6a9ca9b89f70ad48e33579ebf31e47aec70aa302f5352019c4e48f
MD5 c28aa6ae3ee708762138f4892c9a73a0
BLAKE2b-256 cd557afb85117c496703d194332a639723e91ca1fac4128300540418d9949d96

See more details on using hashes here.

Provenance

The following attestation bundles were made for miniclient-0.1.3-py3-none-any.whl:

Publisher: release.yml on marciomazza/miniclient

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.5

3 files

0.2.4

3 files

0.2.3

3 files

0.2.2

3 files

0.2.1

3 files

0.2.0

3 files

This release

0.1.3 This release

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

0.0.10

2 files

0.0.9

2 files

0.0.8

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page