您的位置: 网站首页> selenium爬虫> 当前文章
selenium控制(接管)本地已打开的浏览器
老董-我爱我家房产SEO2020-12-24178围观,125赞
前面我们说过通过一段js把selenium的webdreiver特征全部去除掉后依然可以被检测,遇到这种刁钻的站该怎么办呢?只有用笨方法了。让selenium去控制本地已经正常启动的浏览器。具体实现步骤如下:
1 在cmd下执行命令启动1个浏览器(命令号要带引号)
这个命令走的是谷歌的cdp(Chrome DevTools Protocol) 协议,大家可以去官方了解下这个协议,还是非常强大的。
"C:Program Files (x86)GoogleChromeApplicationchrome.exe" --remote-debugging-port=9222 --user-data-dir="C:selenumAutomationProfile"
2 在selenium脚本中接管这个浏览器
option = Options() option.add_experimental_option("debuggerAddress", "127.0.0.1:9222") driver = webdriver.Chrome(options=option)
网站之前的文章提到过selenium搞浏览器久了会导致内存不足浏览器崩溃,万一崩溃了还得手动重启,关键也不知道啥时候崩溃。基于此,有人会想搞个脚本直接用os模块执行cmd命令启动浏览器的,省去手动的环节,这样可以通过捕获异常来重启浏览器实现长久持续的运行。
以上想法是不行的,在脚本里通过os模块启动浏览器后,selenium无法接管到浏览器。我测试很多次原因不明。
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
selenium控制(接管)本地已打开的浏览器文章写得不错,值得赞赏
站点信息
- 网站程序:Laravel
- 客服微信:a772483200