我是PhantomJS
的新手,玩最基本的代碼:抓取谷歌頁面並截取屏幕截圖。PhantomJS不會呈現整頁內容
我試圖獲取網址是:https://www.google.com/#tbm=lcl&q=starbucks
如果你在一個真正的瀏覽器打開它,你會看到它看起來是這樣的:
但我PhantomJS它看到這樣的:
起初,我想,也許異步Web內容負荷ing太慢了,所以我設法等了很多秒,然後捕獲屏幕,但我看到PhantomJS仍然無法獲取內容。
這裏是我的代碼片段:
var page = require('webpage').create();
page.settings.userAgent = 'Mozilla/5.0 (X11; CrOS x86_64 8172.45.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.64 Safari/537.36';
page.viewportSize = { width: 1280, height: 800 };
page.open('https://www.google.com/#tbm=lcl&q=starbucks', function() {
setTimeout(function(){
page.render('screenshot_failed.png');
phantom.exit();
}, 5000);
});
請點我什麼,我可以獲取該網頁時錯過。謝謝!
你嘗試設置視口大小? 'page.viewportSize = { width:480, height:800 };' – quirimmo
Hi @quirimmo感謝您的評論。是的,我嘗試將它設置爲1280x800,但它沒有幫助。 (我會更新這個問題來反映這個變化。) –
哦,很奇怪,你可以試試另一個解決方案嗎?張貼它作爲答案,但我會刪除它,如果它不會幫助。這是可怕的寫或粘貼代碼在這裏 - .- – quirimmo