Skip to main content

LLM-powered web automation library with autonomous agents and natural language selectors

Project description

webtask

PyPI version Tests License: MIT

LLM-powered web automation with autonomous agents and natural language selectors.

📚 Documentation | 🐍 PyPI | 📊 Benchmarks


Quick Start

pip install pywebtask
playwright install chromium
export GEMINI_API_KEY="your-key"  # or OPENAI_API_KEY

Autonomous mode - Give it a task, let the agent figure out the steps:

from webtask import Webtask
from webtask.integrations.llm import GeminiLLM

wt = Webtask(headless=False)
llm = GeminiLLM.create(model="gemini-2.5-flash")
agent = await wt.create_agent(llm=llm)

result = await agent.execute("search for cats and click the first result")

Direct control - Natural language selectors, you control the flow:

await agent.navigate("https://example.com")
search = await agent.select("search box")
await search.fill("cats")
button = await agent.select("search button")
await button.click()

No CSS selectors. No XPath. Just describe what you want.


Features

  • Multimodal by default - Sees screenshots with bounding boxes + DOM text
  • Extensible - Pluggable LLM and browser interfaces
  • Batteries included - OpenAI, Gemini LLMs and Playwright browser provided
  • Isolated sessions - Separate cookies and storage per agent

Documentation

Full Documentation


Benchmarks

webtask-benchmarks - Evaluation on Mind2Web and other benchmarks


License

MIT

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

pywebtask-0.16.0.tar.gz (66.6 kB view details)

Uploaded Source

Built Distribution

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

pywebtask-0.16.0-py3-none-any.whl (100.3 kB view details)

Uploaded Python 3

File details

Details for the file pywebtask-0.16.0.tar.gz.

File metadata

  • Download URL: pywebtask-0.16.0.tar.gz
  • Upload date:
  • Size: 66.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pywebtask-0.16.0.tar.gz
Algorithm Hash digest
SHA256 cede5462cc345c2118d8f879128633097aefb829cfed39919a2631bc9ce4eabf
MD5 7a4c463358c1662f8bac4249669bee2a
BLAKE2b-256 c76f288fb19b360e0c4c042ac7d4b78fc0c7d21dc84252a1c610c55f0b53ba78

See more details on using hashes here.

Provenance

The following attestation bundles were made for pywebtask-0.16.0.tar.gz:

Publisher: publish.yml on steve-z-wang/webtask

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

File details

Details for the file pywebtask-0.16.0-py3-none-any.whl.

File metadata

  • Download URL: pywebtask-0.16.0-py3-none-any.whl
  • Upload date:
  • Size: 100.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pywebtask-0.16.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ff0e3dcad61dbf706ae865e64f747a9ad5c83c6f2afacea259f8c3d9977df89c
MD5 6c036425936b0e39adfe3518f8f1097f
BLAKE2b-256 f52503c5dca55eb36f09a7fc865e9299df3e7381cc0afd12c8be61ff2241621c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pywebtask-0.16.0-py3-none-any.whl:

Publisher: publish.yml on steve-z-wang/webtask

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page