Selenium webdriver与Phantomjs save_屏幕截图不兼容';不要在码头集装箱内工作
同样的代码在我的本地机器上工作,但在Docker容器中不工作。在我的本地机器上,它会按预期保存所需网站的图像。在Docker容器中,它保存了一个具有正确名称的.png文件,但图像只有8kB且为空。没有错误消息。Docker容器可以访问Internet,因为从容器的bash ping google.com表明Internet连接正在工作。类似地,如果我试图让它显示这个页面中的html,它在Docker中失败,但在本地系统中成功。知道这里怎么了吗 下面是调用Selenium和phantomjs的代码:Selenium webdriver与Phantomjs save_屏幕截图不兼容';不要在码头集装箱内工作,selenium,docker,phantomjs,Selenium,Docker,Phantomjs,同样的代码在我的本地机器上工作,但在Docker容器中不工作。在我的本地机器上,它会按预期保存所需网站的图像。在Docker容器中,它保存了一个具有正确名称的.png文件,但图像只有8kB且为空。没有错误消息。Docker容器可以访问Internet,因为从容器的bash ping 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)
您是否可以添加更多信息,以便于他人重现此问题?请参阅放置附加睡眠并使用多个URL进行测试