cdpfleet
Launch real remote browsers on cdpfleet and drive them with your own
Playwright. No dependencies: bring your own playwright so you control the client version.
pip install cdpfleet playwright
export CDPFLEET_API_KEY=...
Sync
from playwright.sync_api import sync_playwright
from cdpfleet import Cdpfleet
fleet = Cdpfleet() # api_key=..., or CDPFLEET_API_KEY
with sync_playwright() as p, fleet.launch("chrome", proxy="http://user:pass@host:port", headless=False) as session:
browser = session.connect(p.chromium)
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
print(session.live_link("view")["live_url"])
Async
import asyncio
from playwright.async_api import async_playwright
from cdpfleet import AsyncCdpfleet
async def main():
fleet = AsyncCdpfleet()
async with async_playwright() as p, fleet.launch("chromium", headless=True) as session:
browser = await session.connect(p.chromium)
page = await browser.new_page()
await page.goto("https://example.com")
print(await page.title())
asyncio.run(main())
One-step connect URL
fleet.connect_url("chrome", headless="new") returns a URL that launches the browser when you connect to it:
p.chromium.connect(url, headers={"x-api-key": fleet.api_key}) (cdp=True → a /cdp URL for connect_over_cdp).
See https://cdpfleet.com/docs/connect.
keep_alive
A session launched with keep_alive=True survives a disconnect: call session.connect(...)
again to re-attach to the same browser, pages included. session.close() (or leaving the
with block) closes your connections and ends a keep_alive session; session.end() ends it
without touching your connections.
Launch options are passed through as the JSON body (proxy, headless, cdp, keep_alive,
record, proxy_rules, ...); 503 and 429 are retried for up to max_wait seconds. Errors raise
CdpfleetError with status, code and body.
Metadata
Release files for cdpfleet 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cdpfleet-0.1.1.tar.gz | 8.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cdpfleet-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.8 kB
Release files / cdpfleet-0.1.1.tar.gz
| Download URL | cdpfleet-0.1.1.tar.gz |
|---|---|
| Size | 8.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8eaef83efe073094074d217883f40d95e172c49a86f880efbb4bd05d41df9bed
|
|
BLAKE2b-256 checksum How to use checksums |
940717a1b4ebd89400e84393ecec9281f3678dc86cd5e2ad9140bd9c454bda22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency logRelease files / cdpfleet-0.1.1-py3-none-any.whl
| Download URL | cdpfleet-0.1.1-py3-none-any.whl |
|---|---|
| Size | 9.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
471df717ac9bfed1a4984f20649590a47fb98f8f9b067f231bc90dd040a9b08d
|
|
BLAKE2b-256 checksum How to use checksums |
d207fd6a92c70ba139a639dd2b59c34ea4a0197a899505894884f74a8027aee1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.
Transparency log