--- id: pychrome version: "0.2.4" license: BSD license license_treatment: permissive maintenance: dormant --- # pychrome — A Python Package for the Google Chrome Dev Protocol License: permissive · Maintenance: dormant · Downloads: 355.9K/mo ## What it is and what it does Pychrome is a Python client for the Chrome DevTools Protocol, enabling programmatic control of a running Chrome browser instance. It lets you create tabs, navigate to URLs, intercept network requests, and respond to browser events by connecting to Chrome's remote debugging port. The package wraps the protocol's complexity into a Python API, so you can write automation scripts without manually constructing WebSocket messages. Typical use involves starting Chrome with `--remote-debugging-port=9222`, instantiating a Browser object pointing to that port, creating or reusing tabs, and then calling protocol methods (like `Page.navigate` or `Network.enable`) or registering event listeners. The package handles the WebSocket communication and event dispatch internally. It's useful for testing, scraping, or any scenario where you need to drive a real browser from Python code. Use it for: - Automated testing of web applications by navigating pages and checking network requests or DOM state. - Web scraping with JavaScript execution, where you need a real browser to render dynamic content. - Monitoring and logging network traffic from a browser session for debugging or analytics. - Headless browser automation for CI/CD pipelines using Docker or system Chrome with remote debugging. - Building browser bots that interact with web pages programmatically without a GUI. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Pychrome provides a Python interface to control Google Chrome via the Chrome DevTools Protocol, allowing you to automate browser interactions, navigate pages, and listen to network events programmatically. Yes, if you need Chrome automation and can tolerate dormant maintenance. The package is stable and has no known vulnerabilities, but it is no longer actively maintained (last release July 2023). Install it only if you are comfortable with potential incompatibilities as Chrome and its protocol evolve, or if you plan to fork/patch it yourself. For new projects requiring active support, consider alternatives that are actively maintained. ## Install pip install pychrome uv add pychrome poetry add pychrome ## Installing pychrome Before you install: Low install friction with three common dependencies (click, websocket-client, requests). The package is dormant—last release was 2023-07-10, over a year ago—so expect no active maintenance or updates to address new Chrome protocol versions. License in practice: BSD license is permissive, allowing commercial and private use with minimal restrictions, making it safe to adopt from a licensing perspective. Quickstart: pip install pychrome import pychrome browser = pychrome.Browser(url="http://127.0.0.1:9222") tab = browser.new_tab() tab.start() tab.Page.navigate(url="https://example.com", _timeout=5) tab.wait(5) tab.stop() browser.close_tab(tab) Chrome must be running with remote debugging enabled (e.g., `google-chrome --remote-debugging-port=9222`) before pychrome can connect. Verify before relying: - Whether the package works with recent Chrome versions and the current Chrome DevTools Protocol specification. - Compatibility with Python versions beyond 3.6, given classifiers list only up to 3.6 and the package is no longer maintained. ## Package facts - License: BSD license (permissive) - Python support: unspecified - Install friction: low - Maintenance: dormant - Downloads: 355.9K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags chrome automation python, chrome devtools protocol client, browser control remote debugging, headless chrome python, chrome tab management, network monitoring chrome, page automation chrome, browser-automation, testing, web-scraping [View on SkillFed](https://skillfed.io/packages/pychrome) · [View on PyPI](https://pypi.org/project/pychrome/)