2017-03-09 25 views
0

嗨,我正在与PhantomJs从网站捕获屏幕。但看起来结果不准确。phantomjs的屏幕截图并不准确,因为它在浏览器中看到

版本PhantomJS的:1.9.8,操作系统:Ubuntu的14

有了这个下面的代码我试图从URL捕获屏幕,但似乎它不是给完美的屏幕截图.. 还是我做的事情错了?

请参阅本网站的标题部分和屏幕截图..两者不相似。

结果截屏:http://www.awesomescreenshot.com/image/2275399/7cf995d2e287cb87c4ca4895b6b69934

网站,我试图捕捉:http://www.whiteboardexplainers.com/

var system = require("system"); 
if (system.args.length > 0) { 
    var page = require('webpage').create(); 
    page.viewportSize = {width: 1280, height: 1024}; 
    page.open(system.args[1], function() { 
     var pageTitle = system.args[1].replace(/http.*\/\//g, "").replace("www.", "").split("/")[0] 
     var filePath = "pageTitle + '.png'; 

     window.setTimeout(function() { 
      page.evaluate(function() { 
       document.body.bgColor = 'white'; 
      }); 
      page.render(filePath); 
      console.log(filePath); 
      phantom.exit(); 
     }, 200); 

    }); 
} 

回答

2

您使用非常过时PhantomJS版本。考虑到,screnshot看起来非常好。升级到现代PhantomJS版本:2.1.1或更好的2.5测试版。让他们在这里:PhantomJS downloads archive

但即使是现代版本也不支持显示视频,因此无论如何都无法正常工作。

在你的情况下,它似乎不相关,但往往是:这是建议declare a useragent string现代浏览器。否则许多网站会显示其网页的移动版本。

+0

看到本网站的标题部分和屏幕截图..两者不相似。 – HopeFull

+0

和它是什么意思page.settings.userAgent ='SpecialAgent';这里是特殊代理..我们应该通过任何浏览器名称或与SpecialAgent合作? – HopeFull

+0

你可以看看你的useragent这样的网站:http://www.whatsmyua.com/或使用任何其他足够现代的useragent字符串。 – Vaviloff

相关问题