python解决Chrome“选择证书”弹框问题

编程入门 行业动态 更新时间:2024-10-08 22:55:55

python解决Chrome“选择<a href=https://www.elefans.com/category/jswz/34/1770960.html style=证书”弹框问题"/>

python解决Chrome“选择证书”弹框问题

python解决Chrome“选择证书”弹框问题

解决该问题的思路:

由于该弹框是由浏览器进程控制的,如果使用一个线程是无法解决该问题的。解决该问题需要启用一个新的线程,该线程用于点击确认按钮。由于该弹窗是浏览器本身弹窗,应用程序本身是无法控制该弹窗,因此需要使用一些其他方法,类似于按键精灵东西,来点击确认。

实现点击确认方法

方法一:使用VBS+Python

第一步,准备循环点击Enter按钮的vbs脚本enter.vbs,脚本内容如下:

Set WshShell=WScript.CreateObject("WScript.Shell")
For i=1 To 2
WshShell.SendKeys "{enter}"
WScript.Sleep 1000
Next

第二步,写一个调用该脚本的python方法。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author  : WEL
# @Email   : langhuang521@163
import subprocess
import time
import threading
from selenium import webdriver def enter():'''用于输入enter键,关闭弹出按钮(按默认选项值)'''time.sleep(5)subprocess.call("cscript enter.vbs")def open_baidu():'''打开百度页面'''browser = webdriver.Chrome()browser.get("")if __name__=="__main__":thre = threading.Thread(target=enter)runt = threading.Thread(target=open_baidu)runt.start()thre.start()

上方代码是完整的调用程序,vbs脚本和python脚本处于同级目录。执行python脚本时,后台会启动一个cscript进程用于点击enter按键操作,这时候鼠标要聚焦在浏览器上,这样enter操作才对弹框有效,所以这时候要估计好鼠标点击次数和循环时长

该方法缺点是启动cscript时间过长且只能在window环境有效。

第二种方法:使用python的pynput模块

第一步,准备python脚本input_enter.py用于鼠标点击:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author  : WEL
# @Email   : langhuang521@163
'''
该脚本用于输入enter键,关闭弹出按钮(按默认选项值)
'''
from pynput.keyboard import Key,Controller
import timefor i in range(5):time.sleep(3)control=Controller()control.press(Key.enter)control.release(Key.enter)

第二步,写一个调用该脚本的python方法。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# @Author  : WEL
# @Email   : langhuang521@163
import subprocess
import time
import threading
from selenium import webdriver def enter():'''用于输入enter键,关闭弹出按钮(按默认选项值)'''time.sleep(5)subprocess.call("python input_enter.py")def open_baidu():'''打开百度页面'''browser = webdriver.Chrome()browser.get("")if __name__=="__main__":thre = threading.Thread(target=enter)runt = threading.Thread(target=open_baidu)runt.start()thre.start()

上方代码是完整的调用程序,vbs脚本和python脚本处于同级目录。执行python脚本时,后台会运行input_enter.py脚本用于点击enter按键操作,这时候鼠标要聚焦在浏览器上,这样enter操作才对弹框有效,所以这时候要估计好鼠标点击次数和循环时长该方法比vbs速度快且平台移植性好。推荐使用该方法。

更多推荐

python解决Chrome“选择证书”弹框问题

本文发布于:2024-02-13 08:07:54,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1757757.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:证书   python   Chrome

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!