关于修改window.navigator.webdriver代码失效问题

时间:2022-07-26
本文章向大家介绍关于修改window.navigator.webdriver代码失效问题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

我前面写到过sycm自动抓取店铺数据 文章链接:https://blog.csdn.net/qq_35866846/article/details/103410931#comments

但是这个年过完,代码突然不能用了!

经过多方排查我发现:修改window.navigator.webdriver值的 那句代码chrome_options.add_experimental_option('excludeSwitches',['enable-automation']) 没有生效,也就是说selenium打开的浏览器在控制台Console检测结果仍然为TRUE,正常打开的 浏览器测试值应该为undefined

最后查出来原因:是因为我的chrome自动更新了,经测试:79(含79)以后的版本该语句都会失效【测试了79,80,81,个人猜测chrome后续版本把这个配置都给屏蔽掉了】

目前的解决方法:把浏览器退回到79之前的版本

更新容易回去难啊!差点儿把电脑搞报废,最后在安全模式下把系统还原到前几天了才救回来

下面详述下退回chrome的操作:

No1. 先卸载 干净 谷歌浏览器 (注意一定要卸载干净干净,否则下载的安装包点击会没反应) 我是用软件管理卸载的 卸载完成后再执行下面两步 ①先用Everything搜索C盘,把google相关的文件夹删掉(如果自己 在C盘找也行,比较慢,而且找不全,建议使用工具)。 Everything下载地址:https://www.voidtools.com/zh-cn/ ②(关键)把注册表HKEY_LOCAL_MACHINESOFTWAREWow6432NodeGoogle删除,可以试试删除注册表的其他google项(不过我没删貌似也没什么问题)。

No2.下载历史版本的chrome浏览器安装包,不要去官网,官网直接给你安装最新版本的 这是我找的历史版本的下载地址(实测可用): “ https://www.chromedownloads.net/chrome64win/” (我下的是76的稳定版)

No3.下载对应版本的驱动,下载地址:http://npm.taobao.org/mirrors/chromedriver/

No4.到这里已经完成了,再执行之前的代码就没问题了,但是为了避免重蹈覆辙还要继续做一步——禁用chrome的自动更新,详细步骤参考以下链接(注意一定要改成禁用禁用,手动也会被更新): “ https://jingyan.baidu.com/article/0aa223754076f788cc0d6492.html

【写在最后:】如果有更好的办法可以绕过某些网站检测,欢迎在评论区评论交流! 下面有两个方向,欢迎大家尝试 ①使用中间代理截断并修改js返回(由于本人js技术薄弱暂未实现) ②使用pypeeter (暂未尝试成功)