{"id":15012821,"url":"https://github.com/dedinc/pystealth","last_synced_at":"2025-08-21T22:11:06.219Z","repository":{"id":249222456,"uuid":"830938878","full_name":"DedInc/pystealth","owner":"DedInc","description":"Python module for preventing detection of CDP in Selenium, Puppeteer, and Playwright.","archived":false,"fork":false,"pushed_at":"2024-07-19T10:04:11.000Z","size":3,"stargazers_count":10,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-07T10:02:50.268Z","etag":null,"topics":["antibot","antidetect-browser","automation","bot-detection","browser-automation","bypass-detections","cdp","chrome-devtools-protocol","playwright"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/pystealth/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DedInc.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-19T10:00:04.000Z","updated_at":"2024-10-27T21:45:27.000Z","dependencies_parsed_at":"2024-07-19T12:31:21.808Z","dependency_job_id":null,"html_url":"https://github.com/DedInc/pystealth","commit_stats":null,"previous_names":["dedinc/pystealth"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DedInc%2Fpystealth","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DedInc%2Fpystealth/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DedInc%2Fpystealth/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DedInc%2Fpystealth/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DedInc","download_url":"https://codeload.github.com/DedInc/pystealth/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223494315,"owners_count":17154526,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["antibot","antidetect-browser","automation","bot-detection","browser-automation","bypass-detections","cdp","chrome-devtools-protocol","playwright"],"created_at":"2024-09-24T19:43:16.144Z","updated_at":"2024-11-07T10:03:42.092Z","avatar_url":"https://github.com/DedInc.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PyStealth 🕵️‍♂️\n\nPyStealth is a powerful Python module designed to enhance the stealth capabilities of your web automation projects. It works seamlessly with popular frameworks like Selenium, Puppeteer, and Playwright to prevent detection of CDP.\n\n### 🛡️ Key Features\n\n- 🔒 Prevents stack trace access, making it harder to detect automation\n- 🌐 Compatible with Selenium, Puppeteer, and Playwright\n- 🎭 Enhances the stealth of your web scraping and testing projects\n- 🔧 Easy to integrate with existing code\n\n## 🔧 Installation\n\nInstall PyStealth easily with pip:\n\n```bash\npip install pystealth\n```\n\n## 🚀 Quick Start\n\nHere's how to use PyStealth with different frameworks:\n\n### Selenium\n\n```python\nfrom selenium import webdriver\nfrom pystealth import PyStealth\n\ndriver = webdriver.Chrome()\nPyStealth.setup_selenium(driver)\n```\n\n### Pyppeteer\n\n```python\nimport asyncio\nfrom pyppeteer import launch\nfrom pystealth import PyStealth\n\nasync def main():\n    browser = await launch()\n    page = await browser.newPage()\n    await PyStealth.setup_pyppeteer(page)\n    \nasyncio.get_event_loop().run_until_complete(main())\n```\n\n### Playwright\n\n```python\nfrom playwright.async_api import async_playwright\nfrom pystealth import PyStealth\n\nasync def main():\n    async with async_playwright() as p:\n        browser = await p.chromium.launch()\n        page = await browser.new_page()\n        await PyStealth.setup_playwright(page)\n\nasyncio.run(main())\n```\n\n### Playwright over CDP\n\n```python\nimport asyncio\nfrom playwright.async_api import async_playwright\nfrom pystealth import PyStealth\n\nasync def main():\n    port = 9222  # Replace with your CDP port\n    ws_endpoint = \"/devtools/browser/...\"  # Replace with your WebSocket endpoint\n\n    async with async_playwright().start():\n        browser = await p.chromium.connect_over_cdp(f'ws://127.0.0.1:{port}{ws_endpoint}')\n        context = browser.contexts[0]\n        page = context.pages[0]\n\n        await PyStealth.setup_playwright(page)\n\n        # Your automation code here\n\n        await browser.close()\n\nasyncio.run(main())\n```\n\n## 🤝 Contributing\n\nContributions, issues, and feature requests are welcome! Feel free to check [issues page](https://github.com/DedInc/pystealth/issues).\n\n## 📜 License\n\nDistributed under the MIT License. See `LICENSE` for more information.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdedinc%2Fpystealth","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdedinc%2Fpystealth","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdedinc%2Fpystealth/lists"}