使用Selenium库操作已经打开的浏览器页面

基本用法及Chromedriver的安装请移步之前的文章: Python的selenium库常用方法汇总

有时通过selenium打开网站进行某些操作时,发现有些网站需要扫码登录,就很头疼,导致程序进展不下去.
要是做一个自动登录的话就需要引入其他的库,主要是浪费精力写一个只会用到一次的登录功能实在是没必要.
这种情况下我们就会用到Selenium操作已经打开的浏览器页面,我这里以谷歌浏览器Chrome为例:

步骤一:创建文件夹

在电脑的D盘或者F盘或者合适的盘创建一个文件夹,用于存储我们使用Selenium启动Chrome的自动化配置文件AutomationProfile
例如:在D盘创建了一个名为 SeleniumChrome 的文件夹,路径为 D:\Python\SeleniumChrome

步骤二:找到谷歌浏览器路径


然后在当前文件夹打开cmd

或者将Chrome的路径添加到系统环境变量path中

然后就可以在任意位置打开cmd直接输入命令:

chrome.exe --remote-debugging-port=9233 --user-data-dir="D:\Python\SeleniumChrome"

这里端口号随意,只要是没有被其他程序占用的即可,注意后面在代码里要跟这里一致就好.

然后就打开了一个全新的Chrome窗口:

到这里就可以打开你要访问的网址,提前手动登录好.

最后是代码部分:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from time import sleep
from selenium.webdriver.common.by import By

options = Options()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9233")
driver = webdriver.Chrome(options=options)

# 测试打印页面标题
print(driver.title)

-End-

风影OvO

风影OvO, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA 4.0协议进行授权 | 转载请注明原文链接

留下你的评论

*评论支持代码高亮<pre class="prettyprint linenums">代码</pre>

相关推荐