首页 > 编程语言 >python+playwright 学习-37.如何在已经打开的浏览器上继续操作,绕过登录验证码

python+playwright 学习-37.如何在已经打开的浏览器上继续操作,绕过登录验证码

时间:2023-03-27 09:14:18浏览次数:43  
标签:playwright 浏览器 python 37 -- 打开 page chrome

前言

有些网站的安全级别比较高,你可能想绕过登录验证,先手工打开浏览器操作登录,让playwright继续在你已经打开的浏览器上操作。
selenium是可以做到这点,那么playwright也可以实现此功能。

环境准备

首先右键 Chrome 浏览器桌面图标,找到 chrome.exe 的安装路径

复制地址C:\Program Files\Google\Chrome\Application 添加到环境变量Path下

打开cmd输入命令启动chrome浏览器

  • --remote-debugging-port 是指定运行端口,只要没被占用就行
  • --user-data-dir 指定运行浏览器的运行数据,新建一个干净目录,不影响系统原来的数据
> chrome.exe --remote-debugging-port=12345 --user-data-dir="D:\playwright_chrome"

执行后会启动chrome浏览器

参数配置

在启动浏览器的时候,我们还可以带上一些其它参数

  • --incognito 隐私模式打开
  • -–start-maximized:窗口最大化
  • --new-window:直接打开网址

使用示例,用隐私模式打开我的博客

chrome.exe --remote-debugging-port=12345 --incognito --start-maximized --user-data-dir="D:\demo" --new-window https://www.baidu.com

在你已经打开的浏览器页面,手工操作登录,登录成功后,让playwright 继续操作。

playwright 接管页面

当页面打开后,可以使用connect_over_cdp()方法接管前面已经打开的浏览器,获取到context 上下文,通过上下文再获取到page对象

from playwright.sync_api import sync_playwright
# 上海悠悠 wx:283340479
# blog:https://www.cnblogs.com/yoyoketang/


with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp('http://localhost:12345/')
    # 获取page对象
    page = browser.contexts[0].pages[0]
    print(page.url)
    print(page.title())
    page.get_by_text('新随笔').click()

后面的操作,就跟操作page方法一样了


2021最新《Playwright+Python自动化测试》点我 ->立即参与
联系微信:283340479

标签:playwright,浏览器,python,37,--,打开,page,chrome
From: https://www.cnblogs.com/yoyoketang/p/17260263.html

相关文章

  • python模块导入和帮助
    目录模块导入和帮助下载和导入模块帮助常用帮助HELP文档模块导入和帮助下载和导入python‘sstandardlibraryisamazingpython模块:模块就是保存在一个单独文件当......
  • Python - pandas 之常用代码块[转]
    原文:40UsefulPandasSnippetsPandassnippetsthatcomeinhandyindataanalysiswork-2022.04.20相关:Python-pandas之csv文件读取与写入-AIUAIPytho......
  • Python装饰器
    装饰器实质上就是一个python函数,在保证原始业务代码不做任何修改的情况下利用切面的原则动态地增加额外的操作功能。deflogging(func):#接收一个当前执行函数或方法......
  • python工程里面的类型的思考
    虽然我的工程语言是python语言,在工程搭建过程中非常注意类型提示的问题。关于方法的方法的返回值类型的问题:常用的方式是在函数/方法书写一些尖头+类型,这样调用方能很方......
  • Python3.0 新特性
    这篇文章主要介绍了相比于python2.6,python3.0的新特性。更详细的介绍请参见python3.0的文档。CommonStumblingBlocks本段简单的列出容易使人出错的变动。  *prin......
  • Python函数闭包(看一遍就懂系列)
    闭包的定义定义:闭包是由函数及其相关的引用环境组合而成的实体(即:闭包=函数+引用环境)下面这个就是一个简单的闭包函数defExFunc(n):sum=ndefInsFunc():......
  • Python多任务-多线程-多进程-协程-进阶学习
    --多任务-多线程-多进程-协程-进阶学习--文中所提到的案例参考:GITHUB中项目文件夹https://github.com/FangbaiZhang/Python_advanced_learning/tree/master/02_Python_ad......
  • CMD窗口中运行python脚本(虚拟环境下运行py文件)
    项目文件夹创建虚拟环境参考博文:WIN10系统下的Python3.7安装虚拟环境virtualenv和创建Web网站下面以Python_advanced_learning项目文件中的005_MiniWeb_Web服务器_实现模......
  • python+selenium实现在某瓣上自动批量获取中文电影的英文名称
    一、需求背景知道一些电影的中文名称,但是想在国外网站上,查一下这些中文电影的评分。因此就必须知道这些中文电影的英文名称是什么,由此诞生次脚本 二、实现思路通过sele......
  • python3实现阿里云短信发送功能
    #-*-coding:utf-8-*-importuuidimportsysimportjsonimportuuidfromaliyunsdkcore.clientimportAcsClientfromaliyunsdkcore.profileimportregion_pr......