python

当前位置:首页 > selenium教程 > 当前文章

selenium教程

selenium控制(接管)本地已打开的浏览器

2020-12-24 81赞 python中国网
每篇文章努力于解决一个问题!更多精品可移步文章底部。

  前面我们说过通过一段js把selenium的webdreiver特征全部去除掉后依然可以被检测,遇到这种刁钻的站该怎么办呢?只有用笨方法了。让selenium去控制本地已经正常启动的浏览器。具体实现步骤如下:

  1 在cmd下执行命令启动1个浏览器

"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无法接管到浏览器。我测试很多次原因不明。

文章评论

selenium控制(接管)本地已打开的浏览器文章写得不错,值得赞赏