使用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)

你可能感兴趣的:(Python,selenium,测试工具)