試圖從這個網頁https://weather.com/weather/radar/interactive/l/87562:4:US?layers=rwi在Chrome控制檯querySelector工作,但不PhantomJS使用page.evaluate
我在頁面上的Chrome瀏覽器控制檯跑document.querySelector('.modal').style="display: none;"
截圖雷達,擺脫DIV彈出廣告攔截雷達圖片。但無論出於何種原因,PhantomJS不會讓斯巴魯廣告消失。 Current PhantomJS screenshot
我也試着運行document.querySelector('.close').click();
來關閉頁面上的廣告,它使用控制檯在Chrome中工作,但不是在PhantomJS中。
我可以在Chrome控制檯中運行querySelector並擺脫Subaru廣告並截取div #imap,但無論出於何種原因,它都不適用於PhantomJS。
我試着在超時時間內移動querySelector,但沒有任何變化。
var page = require('webpage').create();
page.viewportSize = { width: 1280, height: 720 };
page.open('https://weather.com/weather/radar/interactive/l/87562:4:US?layers=rwi', function (status) {
page.evaluate(function() {
document.querySelector('.modal').style="display: none;"
});
setTimeout(function() {
var clipRect = page.evaluate(function(){
return document.querySelector('#imap').getBoundingClientRect();
});
page.clipRect = {
top: clipRect.top,
left: clipRect.left,
width: clipRect.width,
height: clipRect.height
};
console.log(JSON.stringify(clipRect));
page.render('imap2.png');
phantom.exit();
}, 6000);
任何人都可以指出我在這裏失蹤的方向嗎?
感謝,
大衛