2016-09-30 2 views
0

Я новичок в phantomjs. Я пытаюсь открыть мобильную страницу facebook и сделать снимок экрана. Это мой код:Facebook мобильный сайт сделать неполным в Phantomjs

"use strict"; 
var page = require('webpage').create(); 
page.viewportSize = { 
    width: 360, 
    height: 640 
}; 
page.settings.javascriptEnabled = true; 
page.settings.loadImages = false; 
phantom.cookiesEnabled = true; 
phantom.javascriptEnabled = true; 

// userAgent for Galaxy S5 
page.settings.userAgent = 'Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2875.0 Mobile Safari/537.36'; 
page.open('https://m.facebook.com', function (status) { 
    if (status !== 'success') { 
     console.log('Unable to access network'); 
    } else { 
     setTimeout(funciton() { 
      page.render('fb.png'); 
      phantom.exit(); 
     }, 10000);   
    } 
}); 

Скриншот:

enter image description here

Я судимое изменить UserAgent для iPhone 5 и увеличить SetTimeout до 1 минуты. Снимок экрана остается таким же.

+3

Это не неполный, он сломан, я бы сказал. Интересно, что если я не переопределяю useragent или не использую более старый, например «Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/533.16 (KHTML, например, Gecko) Версия/5.0 Safari/533.16 'тогда скриншот в порядке. – Vaviloff

ответ

0

Как сказал @Vaviloff, я удалил следующую строку:

page.settings.userAgent = 'Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2875.0 Mobile Safari/537.36'; 

Исправлена ​​проблема! лол!

Смежные вопросы