使用无头模式的Selenium chromedriver在从SSH执行时无法启动

loading...


1

我找了类似的问题,但找不到任何问题 .

我正试图在CentOS 7平台上以无头模式(使用Selenium)运行chrome浏览器 . 该网站使用SSL(我必须在运行Chrome客户端的计算机上本地下载并安装证书,因此它可以确认它 . 在此之前,我已经获得'SSL证书'问题)

当我用 GUI 环境(KDE)运行我的脚本时,一切正常 . 也在 headless 模式 .

但是,如果我通过SSH连接到机器并执行相同的脚本 - 驱动程序无法“打开”chrome,加载页面,不存在任何元素等 .

这是代码片段:

from pyvirtualdisplay import Display
import os
chrome_options = webdriver.ChromeOptions()
chrome_options.binary_location = '/opt/google/chrome/chrome'
chrome_options.add_argument('--headless')
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--ignore-certificate-errors')
chrome_options.add_argument('--disable-gpu')
chrome_options.add_argument('--window-size=1024,768')
os.environ['webdriver.chrome.driver'] = driver_path

display = Display(visible=0, size=(1024, 768))
display.start()
driver = webdriver.Chrome(driver_path, chrome_options=chrome_options,
                          service_args=['--verbose', '--log-path=/tmp/chromedriver.log'])

我怀疑它与某种方式有关 Xvfb (由pyvirtualdisplay启动) . 我把手指放在丢失的一块上 .

我已经检查了两个场景之间的chromedriver日志的差异(从SSH运行与使用GUI运行相比),我得到了这个错误:

ERROR:cert_verify_proc_nss.cc(922)] CERT_PKIXVerifyCert for mysite failed err=-8179

我不确定这是否相关,它可能是其他东西,因为我相信从这个客户端到这个网络服务器(SSL信息是安全的) .

欢迎任何建议 . 我现在正试图解决这个问题几天 .

0回答

No Data

loading...

评论

暂时没有评论!