簡體   English   中英

為什么Phantomjs無法在該站點上使用?

[英]Why does Phantomjs not work with this site?

我是phantomjs的新手,正在使用2.5.0-development版本進行測試。 我使用了腳本screen.js它可以與http://phantomjs.orghttps://google.com一起很好地工作,但不能與https://globo.comhttps://uol.com.br一起工作不明白我在做什么錯,沒有錯誤出現。

screen.js

var page = require('webpage').create();
page.open('https://www.globo.com', function() {
  page.render('globo.png');
  phantom.exit();
});

編輯:我嘗試使用舊版本2.1.1,並且可以正常工作。 問題似乎是版本。

如phantomjs頁面( http://phantomjs.org/)所述-PhantomJS開發已停止,並且在這一點上已經過時了。 PhantomJS基本上等效於6-7年的瀏覽器,不支持許多當前的JS / CSS(let,const,flexbox,網格布局等),並且有討厭的習慣,即在不受支持的JS功能時不引發錯誤(例如letconst )用於頁面的資產中,而只是忽略那些JS文件。 切換到更現代的產品(如無頭Chrome),您會變得更好。

我認為您必須在頁面加載之前稍等片刻。 嘗試添加設置超時,例如:

var page = require('webpage').create();
page.open('https://www.globo.com', function() {
  setTimeout(function(){
     page.render('globo.png');
     phantom.exit();
  }, 5000); // Change timeout as required to allow sufficient time 
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM