前言

有过几个小伙伴问过我如何利用 Selenium 获取已经打开的浏览器窗口,这里给安排了,还安排了两篇。

标题 链接
【Selenium】控制当前已经打开的 chrome浏览器窗口 https://blog.csdn.net/weixin_45081575/article/details/112621581
【Selenium】控制当前已经打开的 chrome浏览器窗口(高级篇) https://blog.csdn.net/weixin_45081575/article/details/126389273

这里使用 chrome浏览器 来做示例。

整个下来主要有两个步骤,

  1. 手动打开浏览器,
  2. 使用 Python程序 去获取到手动打开的 chrome浏览器

应用场景(理论上)

  1. 登录账号并且需要输入手机验证码的网站;
  2. 登录账号并且需要人机验证的网站(如图片点选、文字点选等人机验证;

1. 打开浏览器

首先来到安装 chrome浏览器 的文件夹下,例:C:\Program Files (x86)\Google\Chrome\Application

在此界面打开 cmd窗口,

然后输入:chrome.exe --remote-debugging-port=9527 --user-data-dir=“F:\selenium\AutomationProfile” ,并回车。
这句代码的意思是启动 chrome浏览器 的调试模式,

  • user-data-dirr=“F:\selenium\AutomationProfile” 是在单独的配置文件中启动 chrome浏览器,可以理解为 新的浏览器,记得创建对应文件夹哦;
  • 其中 9527 为端口号,可自行指定。


此时候,如果无误的话就可以看到桌面新打开了一个 chrome 浏览器了。
见以下示例动图,

那接下来就是去控制这个 手动打开的 chrome浏览器 啦。


2. 编写 Python程序获取控制 浏览器

Demo代码 如下:

from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsoptions = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9527")
browser = webdriver.Chrome(options=options)print(browser.title)

代码运行后,可以看到如下:即获取 当前页面的 title




修改了一下代码,如下所示:

from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsoptions = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9527")
browser = webdriver.Chrome(options=options)url = 'https://www.bilibili.com'
browser.get(url)
print(browser.title)    # 哔哩哔哩 (゜-゜)つロ 干杯~-bilibili

运行之后可以看到,
浏览器窗口请求了新的 URL(https://www.bilibili.com),并且获取到了当前页面的 title

3. 总结

去到 chrome浏览器 安装的文件夹下,打开 cmd窗口,输入以下内容:

chrome.exe --remote-debugging-port=9527 --user-data-dir="F:\selenium\AutomationProfile"

然后执行 2.Python代码即可控制当前浏览器窗口。


后话

自己动手操作一番,岂不美哉?
See you.

【Selenium】控制当前已经打开的 chrome浏览器窗口相关推荐

  1. 【Selenium】控制当前已经打开的 chrome浏览器窗口(高级版)

    前言 利用 Selenium 获取已经打开的浏览器窗口,全python操作 标题 链接 [Selenium]控制当前已经打开的 chrome浏览器窗口 https://blog.csdn.net/we ...

  2. selenium:使用已打开的chrome浏览器

    前言 环境参考 selenium:我的第一个程序 使用已打开的chrome浏览器有啥好处 不用验证登陆状态,可以先登陆,再爬虫 不用反复开浏览器 开启命令行启动 chrome.exe 找到 chrom ...

  3. linux打开浏览器密码取消,Deepin下打开谷歌chrome浏览器提示解锁登录密钥环的解决方法...

    在Deepin Linux系统下打开谷歌chrome浏览器都提示解锁登录密钥环,每次登录打开浏览器都会提醒(解锁登录密钥环:输入密码以解锁您的登录密钥环,您用于登录计算机的密码与您的登录密钥环中的密码 ...

  4. chrome 窗体高度_控制Chrome浏览器窗口最小宽度和高度

    控制 Chrome 浏览器窗口最小宽度和高度 (原创) 最近通过 Chrome 浏览器做 UI , Golang 作为主体语言的方式做了一个本地信息搜索的小工具, 核心的两个表列是捆绑对齐的,但在浏览 ...

  5. python控制已经打开的浏览器_使用python+selenium控制手工已打开的浏览器

    我们可以利用Chrome DevTools协议.它允许客户检查和调试Chrome浏览器. 打开cmd,在命令行中输入命令: chrome.exe --remote-debugging-port=922 ...

  6. Python+selenium 自动化-操作已启用的chrome浏览器实例演示,chrome启用调试端口方法

    首先在 chrome 快捷方式的目标后面加上这个参数. 前面是代表调试端口,可以随便用端口,后面指向一个新的文件夹用于存储用户数据. 注: 后面的参数如果不加上,端口启用好像会失败,目前没有找到原因. ...

  7. 解决python+selenium自动化,打开谷哥浏览器窗口么会自动关闭问题

    # 导包 from selenium import webdriver from selenium.webdriver.common.by import By # 实例化浏览器,且浏览器对象的初始化放 ...

  8. Python+selenium 自动化-启用带插件的chrome浏览器,调用浏览器带插件,浏览器加载配置信息。

    正常的话我们启用的 chrome 浏览器是不带插件的,如果你能登陆 chrome 的话,你会发现登陆信息也没有,还有不管你怎样设置每次新打开的 chrome 都是默认设置的. 我们正常启动的浏览器每次 ...

  9. [Selenium] 如何在老版本的Chrome 浏览器上使用selenium

    由于Chrome Driver 只兼容Chrome  浏览器12.0.712.0 和之后的新版本,会因此如果要在老版本的Chrome  浏览器上使用Selenium, 则只能使用 SeleniumRC ...

最新文章

  1. 《数据科学R语言实践:面向计算推理与问题求解的案例研究法》一一2.1 引言...
  2. oracle timestamp约束,java.lang.ClassCastException:oracle.sql.TIMESTAMP不能转换为java.sql.Timestamp...
  3. 洛谷P1373 小a和uim之大逃离
  4. 百度地图api改变覆盖物背景实例及css颜色值简介
  5. Spring Web 应用的最大败笔
  6. js笔记(8)之数组篇
  7. PP生产订单成本的计划、控制和结算
  8. Numeric tile and other files loaded in Smart Template tile render launch
  9. 关于farpoint公司的控件:SPREAD for .NET Windows Forms Ed.的一些简单方法.
  10. git push到GitHub的时候遇到! [rejected] master -> master (non-fast-forward)的问题
  11. android 阻塞式函数,Android之PC浏览器上传表单格式大文件到手机客户端read函数阻塞问题...
  12. 利用pagespeed插件优化网站css层叠样式文件
  13. 计算机vb题库程序代码编写,计算机二级考试.题库-vb程序题
  14. layui table切换html,解决Layui中切换tab时table样式错乱问题
  15. VRRP协议 学习笔记
  16. JAVA实现战舰游戏
  17. 安装semantic segmentation editor
  18. matlab c2d的c语言实现,Matlab c2d()函数的用法
  19. 日本恐怖片《二重身》核心内容赏析
  20. 蓝牙遥控小车2.0版发布啦

热门文章

  1. 云服务器只能显示控制台吗,云服务器控制台使用方法
  2. 大数据写入到Oracle数据库(批量插入数据)
  3. 棋牌游戏网站分析——远航游戏中心
  4. 分享一个非常不错的手机定位网
  5. 【pytest】三、pytest用例管理框架的前后置(固件、夹具)setup和teardown,及封装
  6. 基于ros_arduino_bridge的智能小车----下位机篇
  7. 国内产线 OLED 良率低,产能释放缓慢
  8. 林下仿野生天麻的种植技术方法
  9. pandas自动化实战小任务1--对excel表格分 供应商 付款年月 进行汇总(涉及根据即有相同也有不同的index的表格合并)公司的数据
  10. 一键登录网易163邮箱