如果其他人遇到这个问题:问题似乎是虚拟机没有显示器,需要像pyvirtualbox这样的虚拟显示器,或者像phantomJS这样的无头浏览器。
编辑:
我正在添加如何实现我列出的两个解决方案的示例。一般来说,解决这个问题的方法取决于您有哪些限制。最简单的方法就是不使用虚拟机,但如果您确实需要使用VM,则需要采取我上面概述的两种方法之一。
# PHANTOM JS SOLUTION
from selenium import webdriver
driver = webdriver.PhantomJS() # assuming your phantomJS driver is in your path already
driver.get("https://www.google.com")
driver.quit() # only use this when done with automation
# PYVIRTUALBOX SOLUTION
from pyvirtualdisplay import Display
from selenium import webdriver
display = Display(visible=0, size=(1920, 1080)).start()
driver = webdriver.Firefox()
driver.get("https://www.google.com")
display.close() # use this only once you are finished with automation
driver.quit()