标题说明了一切。我在没有 GUI 的远程网络服务器上使用 webdriver。从命令行,我可以做到这一点,一切正常:
from selenium import webdriver
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800,600))
display.start()
browser = webdriver.Firefox()
即,我可以使用浏览器实例浏览网页、获取网址、获取源代码以及其他所有内容。但是尝试在服务器上执行包含相同行的脚本是行不通的。脚本通过 PHP 执行可能是相关的。脚本中的所有内容都可以正常工作,直到browser = webdriver.Firefox()
导入和显示内容都可以正常工作。这只是最后一行;出于某种原因,浏览器不想在脚本尝试打开它时打开。这毫无意义,我真的很难过。可能的原因/修复?也许与权限有关?
编辑
澄清一下,我在远程服务器上做这一切。通过命令行,我将 SSH 与 PUTTY 一起使用,当我尝试测试脚本时,我只是在网站上进行。