带有Phantomjs save_screenshot的Selenium webdriver在Docker容器中不起作用

代码在我的本地机器上工作,但不能在Docker容器中工作。 在我的本地机器上,它保存了所需网站的图像。 在Docker容器中,它使用正确的名称保存.png文件,但图像只有8kB,并且是空白的。 没有错误信息。 Docker容器可以访问因特网,因为从容器的bash pinging google.com显示Internet连接正在工作。 同样,如果我试图让它显示从这个页面的HTML,它在Docker中失败,但在我的本地系统上成功。 任何想法这里有什么问题?

这是调用Selenium和phantomjs的代码:

def init_driver(): driver = webdriver.PhantomJS() driver.set_window_size(1600, 1200) # must give the page enough time to fully render driver.implicitly_wait(WAIT_TIME) return driver def render_page(driver, url): driver.get(url) def save_image(driver, path): driver.save_screenshot(path) IMAGE_NAME = 'test_image.png' WAIT_TIME = 10 url = 'https://www.google.com/' driver = phantom_tools.init_driver() render_page(driver, url) save_image(driver, IMAGE_NAME)