Python中的Ghost并没有采用全分辨率浏览器截图

时间:2015-05-15 15:27:29

标签: python selenium ghost

Windows 7 / Python 2.6

我正在尝试使用完整的浏览器屏幕截图,然后使用枕头来比较图像。我已经开始使用Ghost作为屏幕截图,因为我似乎无法让Selenium / PhantomJS在无头模式下获取完整的浏览器屏幕截图。当我使用Ghost截取屏幕截图时,图像的分辨率就像是780x8000,甚至认为我将视口大小设置为1920x680(只是在使用枕头时测试分辨率大小)。可悲的是,我无法分享屏幕截图,但这只是一段代码。

from ghost import Ghost
self.ghost = Ghost(viewport_size=(1920,680))
self.ghost.open('someurl')
self.ghost.capture_to('somedir')

截取屏幕截图后,图像显示网页中的所有项目,但布局的宽度为1000px。

有人可以解释如何获得在1920x" PageHeight"使用ghost还是其他可能的python包?

2 个答案:

答案 0 :(得分:1)

我找到了修复程序,它不是在构造函数中设置视口大小,而是使用set_viewport_size(x,y)方法。

答案 1 :(得分:1)

如果你打电话,你应该可以使用selenium + phantomjs的无头截图

driver.set_window_size(x, y)

然后

driver.get_screenshot_as_file( "/path/to/img.png" )