主角登场
https://github.com/MeiK2333/pyppeteer\_stealth
第一眼看也能猜出来是干啥的, 就是用来隐藏pyppeteer特征的, 话不多说, 直接开干, 来测一下就知道它的神奇之处了
安装
1
| pip install pyppeteer_stealth
|
使用
1 2 3 4 5 6 7 8 9 10 11 12 13
| import asyncio from pyppeteer import launch from pyppeteer_stealth import stealth
async def main(): browser = await launch(headless=True) page = await browser.newPage() ### await stealth(page) # <-- Here ### await page.goto("https://bot.sannysoft.com/") await browser.close() asyncio.get_event_loop().run_until_complete(main())
|
参数
1 2 3 4 5 6 7 8 9 10 11 12
| stealth( page: Page, run_on_insecure_origins: bool = False, languages: [str] = ["en-US", "en"], vendor: str = "Google Inc." user_agent: str = None, locale: str = "en-US,en", mask_linux: bool = True, webgl_vendor: str = "Intel Inc.", renderer: str = "Intel Iris OpenGL Engine", disabled_evasions: list = [], )
|
禁止隐藏的特征disabled_evasions , 支持隐藏的参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| ['chrome_app', 'chrome_runtime', 'iframe_content_window', 'media_codecs', 'sourceurl', 'navigator_hardware_concurrency', 'navigator_languages', 'navigator_permissions', 'navigator_plugins', 'navigator_vendor', 'navigator_webdriver', 'user_agent_override', 'webgl_vendor', 'window_outerdimensions']
|
使用之前
无头模式 vs 正常显示页面

使用之后

原图在项目里, 虽然看不清, 但是可以看到使用之后无头浏览器比正常运行的还像 ·真浏览器·, 😂, 有兴趣的可以试一试
