利用stealth.min.js隐藏selenium特征 - Python

一、简介

其实stealth.min.js这个文件应该不用我多介绍了,是puppeteer中用于抹去自动化程序特征的。当他被单独提取出来后就可以在selenium中加载并使用,使得可以抹掉selenium中的自动化特征,从而绕过一些网站或者验证程序的机器人检测。

二、用法

关于这个文件在Python的selenium的用法其实很简单,就是在初始化完webdriver后使用execute_cdp_cmd函数来执行这个js文件即可

# 初始化webdriver
driver = webdriver.Chrome()
# 读取文件
with open('stealth.min.js', 'r') as f:
    js = f.read()
# 调用函数在页面加载前执行脚本
driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument', {'source': js})

然后就可以正常使用driver来进行其他操作了 

三、重点:文件

但还有一个很重要的问题就是,去哪里搞这个stealth.minl.js文件呢?我翻找过无数个回答,虽然能找到,但是都是几年前的老版本,甚至还要收费...

所以我去puppeteer-extra的官方github仓库里找到了生成这个文件的方法,并把它用GithubActions制作成了每周都生成一个新版本并同步在我的仓库里GitHub - requireCool/stealth.min.js: Automatically generate the newest stealth.min.js.​​​​​​Automatically generate the newest stealth.min.js. Contribute to requireCool/stealth.min.js development by creating an account on GitHub.https://github.com/requireCool/stealth.min.js

希望可以点个Star关注一下,谢谢啦~

附上CDN链接

另外,为了照顾大家可能不能正常访问Github的问题,后面贴了jsdelivr的cdn地址,需要的可以直接下载,别忘了回来点赞哦~

stealth.min.js

你可能感兴趣的:(python,selenium)