Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

undetected-playwright-patch

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

undetected-playwright-patch

Undetected version of playwright

  • 1.40.0.post1700587210000
  • PyPI
  • Socket score

Maintainers
1

🎭 Playwright for Python

PyPI version

This is a patch of the original playwright implementation for Python.

It currently passes for sure (tested on Win10):

  • ✅ [CloudFare]
  • ✅ [Bet365] (shape//F5 I think)
  • [Others] Unknown/Not tested

Warnings:

  • the Only chromium part for Playwright is patched.

Demos (tested on Win 10)

img.png img.png

Dependencies

  • Google-Chrome installed (channel="chrome" recommended, default)

Installation

execute in your shell console

pip install undetected-playwright-patch
Installation note for UNIX//Linux
Resolve "Permission Denied" error (click to expand)

On UNIX-based OS, you might run into the following errors

Permission denied: '...python3.**/site-packages/undetected_playwright/driver/playwright.sh'

and

...python3.**/site-packages/undetected_playwright/driver/node: Permission denied

To resolve them, simply run

chmod +x <The path your terminal tells you>.sh

# so smth like: ...python3.**/site-packages/undetected_playwright/driver/playwright.sh

and

chmod +x <The path your terminal tells you for node>
# so smth like: ...python3.**/site-packages/undetected_playwright/driver/node
Build from this repo:
git clone https://github.com/kaliiiiiiiiii/undetected-playwright-python
cd undetected-playwright-python
python -m pip install -r local-requirements.txt
python build_patched.py

Example

import asyncio

# undetected-playwright here!
from undetected_playwright.async_api import async_playwright, Playwright


async def run(playwright: Playwright):
    args = []
    
    # disable navigator.webdriver:true flag
    args.append("--disable-blink-features=AutomationControlled")
    browser = await playwright.chromium.launch(headless=False,
                                               args=args)
    page = await browser.new_page()
    await page.goto("https://nowsecure.nl/#relax")
    input("Press ENTER to continue to Creep-JS:")
    await page.goto("https://nowsecure.nl/#relax")
    await page.goto("https://abrahamjuliot.github.io/creepjs/")
    input("Press ENTER to exit:")
    await browser.close()


async def main():
    async with async_playwright() as playwright:
        await run(playwright)


if __name__ == "__main__":
    loop = asyncio.ProactorEventLoop()
    loop.run_until_complete(main())
    # asyncio.run(main) # should work for non-Windows as well

# undetected-playwright here!
from undetected_playwright.sync_api import sync_playwright


with sync_playwright() as p:
    args = []
    
    # disable navigator.webdriver:true flag
    args.append("--disable-blink-features=AutomationControlled")
    browser = p.chromium.launch(args=args, headless=False)
    page = browser.new_page()
    page.goto("https://nowsecure.nl/#relax")
    input("Press ENTER to continue to Creep-JS:")
    page.goto("https://nowsecure.nl/#relax")
    page.goto("https://abrahamjuliot.github.io/creepjs/")
    input("Press ENTER to exit:")
    browser.close()

Documentation

See the original https://playwright.dev/python/docs/intro

API Reference

https://playwright.dev/python/docs/api/class-playwright

Patches

  • Runtime.enable
    • remove Runtime.enable occurences
    • patch _context(world) getter
      • isolatedWorld (utility)
      • main world (main)
      • reset on frame-reload//navigation

TODO's

  • add GitHub runner to build releases automated

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc