0


Python Selenium常见错误&解决方式

一)Selenium关闭INFO:CONSOLE提示

[0313/230033.593:INFO:CONSOLE(2)] "newDefaultData=>> [object Object]", source: https://baidu.com(2)
[0313/230033.639:INFO:CONSOLE(2)] "index names", source: https://baidu.com (2)

解决方案:(仅适用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")

加载完成后会闪退

成功代码

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

option = webdriver.ChromeOptions()
option.add_experimental_option("detach", True)
s = Service('C:\\chromedriver.exe')
driver = webdriver.Chrome(service=s,options=option)

driver.get(url="http://baidu.com")

# driver.close()

关键代码:

option.add_experimental_option("detach", True)

该选项用于控制浏览器关闭时是否保持后台进程运行的。设置为True时,浏览器关闭后会保持后台进程运行


本文转载自: https://blog.csdn.net/qq_27130557/article/details/136694732
版权归原作者 Vc______ 所有, 如有侵权,请联系我们删除。

“Python Selenium常见错误&解决方式”的评论:

还没有评论