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.0.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.0-py3-none-any.whl (519.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: miniclient-0.1.0.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.0.tar.gz
Algorithm Hash digest
SHA256 a223880f0551575a1b2f78d52c18d98c3ae7d4cf5f9c5094a8151aec341719b7
MD5 8b78b0610dc6604020e460ad8eb73402
BLAKE2b-256 aaa872fd5ac2fa79ff595ee83a14193e39a9a5e83ef96d6bcefd1e1ccbcad958

See more details on using hashes here.

Provenance

The following attestation bundles were made for miniclient-0.1.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: miniclient-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 519.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0ff5c8118c3b1ef364aeddfb2625e47619bf00648ea085da2f5355313b69be8b
MD5 93d3eadf621403300c67ebc844aea4a6
BLAKE2b-256 96937bafea8bcfe0cd4b91c7cb751d90f5a089f701093ad5308aa3e0df7728f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for miniclient-0.1.0-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

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

This release

0.1.0 This release

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