Python Selenium常见错误&解决方式(1)

文章讲述了在使用Selenium时遇到的问题,如Windows下启动ChromeHeadless时的证书验证错误,以及Chrome和ChromeDriver版本不匹配导致的闪退。同时,作者分享了如何导入证书解决证书验证问题,以及提供了一份Python开发者的学习资源指南。
摘要由CSDN通过智能技术生成

解决方案:(仅适用Selenium版本 4.0+ & Windows)

导入包,设置选项即可,以下为演示代码,请根据自己的修改:

from subprocess import CREATE_NO_WINDOW             #仅适用于Windows
s = Service(chromium_driver_path)                #chromium_driver_path为你的chromoum deiver路径
s.creation_flags = CREATE_NO_WINDOW                # 屏蔽控制台输出
self.driver = webdriver.Chrome(service=s)

二)cmd调用Selenium-wire写的脚本一直输出:

[0313/220113.982:ERROR:cert_verify_proc_builtin.cc(766)] CertVerifyProcBuiltin for at.alicdn.com failed:
----- Certificate i=1 (CN=Selenium Wire CA) -----
ERROR: No matching issuer found


[0313/220114.706:ERROR:cert_verify_proc_builtin.cc(766)] CertVerifyProcBuiltin for assets.giocdn.com failed:
----- Certificate i=1 (CN=Selenium Wire CA) -----
ERROR: No matching issuer found

解决方案:启动selenium chrome(headless无头模式想修复这个问题也需要启动GUI导入证书)后,打开chronium导入Selenium-wire附带的证书即可:

下载,保存为ca.crt

随后启动chromium,打开隐私与安全----安全----证书-----受信任的根证书颁发机构,点击导入,一直下一步即可修复!

三)python selenium chrome webdriver和chrome版本不一致

由于chrome浏览器的自动更新机制,chome被更新至122.0.6261.95,而此前使用的chrome driver为122.0.6261.94,相差一个版本,启动脚本会闪退/代码执行完会自动退出。chromedriver发布页的最新版本为94,没有95。

后续使用指定版本的chrome和chromedriver解决:
下载链接:https://vikyd.github.io/download-chromium-history-version/#/

四)python调用chrome webdriver闪退原代码

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_extension('C:\\chromedriver.exe")

driver = webdriver.Chrome(service=s, options=options)
driver.get("http://www.baidu.com")

加载完成后会闪退

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

img
  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一些常见Python Selenium面试问题: 1. 什么是SeleniumSelenium是一个开源的自动化测试框架,可以用于Web应用程序的测试和自动化。 2. 什么是WebDriver? WebDriver是Selenium的一部分,它是一个用于控制浏览器的接口,可以用于模拟用户行为。 3. 如何在Python中安装Selenium? 可以使用pip命令在Python中安装Selenium,如下所示: ``` pip install selenium ``` 4. 如何使用Selenium启动浏览器? 可以使用WebDriver对象来启动浏览器,如下所示: ``` from selenium import webdriver driver = webdriver.Chrome() ``` 5. 如何在Selenium中查找元素? 可以使用find_element_by_方法来查找元素,例如: ``` element = driver.find_element_by_id('element_id') ``` 6. 如何在Selenium中模拟用户行为? 可以使用WebDriver对象的方法来模拟用户行为,例如: ``` driver.get('http://www.example.com') element = driver.find_element_by_id('element_id') element.click() ``` 7. 如何在Selenium中处理弹出窗口和对话框? 可以使用WebDriver对象的switch_to方法来切换到弹出窗口或对话框,例如: ``` alert = driver.switch_to.alert alert.accept() ``` 8. 如何在Selenium中处理多个窗口? 可以使用WebDriver对象的window_handles方法来获取所有窗口的句柄,并使用switch_to方法切换到指定的窗口,例如: ``` handles = driver.window_handles driver.switch_to.window(handles[1]) ``` 以上是一些常见Python Selenium面试问题,希望对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值