如何正确移除中Pyppeteer的window.navigator.webdriver
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,如何正确移除中Pyppeteer的window.navigator.webdriver,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你
千家信息网最后更新 2026年10月31日如何正确移除中Pyppeteer的window.navigator.webdriver
如何正确移除中Pyppeteer的window.navigator.webdriver,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
时过境迁,随着 Chrome 版本升级,这一方法也宣告失效。
今天我们来讲讲如何隐藏Pyppeteer。
今天的方法非常简单,不需要修改源代码。
大家阅读 Selenium 版的文章,应该看到我们的原理是通过 CDP 执行一段 JavaScript 代码。这段代码中有一个关键词叫做addScriptToEvaluateOnNewDocument。表示添加一段脚本,在打开新文档时执行。
我们记住这个关键词EvaluateOnNewDocument。现在大家打开 Pyppeteer 的官方 API[1],搜索evaluateOnNewDocument可以看到原来 Pyppeteer 也是支持这个功能的。
这样一来文件就非常简单了,我们在 Pyppeteer 里面直接调用它,并传递 JavaScript 代码就好了:
import asyncio
from pyppeteer import launch
async def main():
browser = await launch(executablePath='/Applications/Google Chrome.app/Contents/MacOS/Google Chrome', headless=False)
page = await browser.newPage()
await page.evaluateOnNewDocument('''() => {
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
}
''')
await page.goto('http://exercise.kingname.info')
input('检查完毕后按下回车键关闭窗口...')
await browser.close()
asyncio.run(main())
代码的运行效果如下图所示:
完美解决问题。并且只要你不开新的选项卡或者新的窗口,只在当前窗口打开新的网址或者刷新页面,这个 js 代码都是自动生效的,不需要重复执行。
其中关键的代码就是:
await page.evaluateOnNewDocument('''() => {
Object.defineProperty(navigator, 'webdriver', {
get: () => undefined
})
}
''')
让 Pyppeteer 在每个新页面加载的时候,所有网站自带的 js 执行之前,执行参数中的这段JavaScript 函数。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。
代码
关键
关键词
文章
方法
页面
帮助
支持
清楚
时过境迁
这样一来
一来
内容
函数
功能
原理
参数
回车键
官方
对此
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技工作委员会
互联网科技工作委员会主任
科技赋能下的互联网金融
河南真二互联网科技有限公司
腾讯阿里互联网科技
中资互联网科技
华宇互联网科技
华中科技大学互联网
互联网金融科技平台
居家互联网科技有限公司
镁科技互联网资讯平台
中盈科技互联网信息有限公司
北京大学互联网科技怎么样
昭通互联网科技选哪家
和信科技工业互联网
互联网5g黑科技有哪些
玉溪互联网科技怎么选
区块链结合互联网科技
富国互联网金融科技混合基金
萌小萌互联网科技河南有限公司
互联网科技股
鸠鸠互联网科技
工业互联网科技新基建
互联网科技的
北京互联网科技公司
碳银互联网科技有限公司
金融科技和互联网金融
中盈科技互联网信息有限公司
黑龙江互联网科技公司
小牛互联网科技有限公司地址