Изменяет ли настройка пользовательского агента в PhantomJS перспективу захвата экрана/снимка экрана?

Я относительно новичок в использовании PhantomJS и хотел бы сделать скриншоты нашего веб-сайта, чтобы позже их можно было сравнить. Мне любопытно узнать, повлияет ли изменение настройки пользовательского агента на перспективу снимка экрана (т.е. будет ли изображение выглядеть иначе)? - Если это не так, как бы вы предложили мне делать снимки экрана, эмулируя различные браузеры (надеюсь, используя Phantom, но открыты для предложений)?

// PhantomJS Code
page = require('webpage').create();
// Used for Firebird (old Firefox)
page.settings.userAgent = 'Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.5) Gecko/20031007 Firebird/0.7';
// Used for Chrome
page.settings.userAgent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36';
page.viewportSize = {width: 1200, height : 800};
page.open("webAddress", function() {
    page.render(picName);
    pahntom.exit();
});

Ссылка на используемый код HTML/CSS и ссылка ниже

Да, я проверил, изменив атрибут пользовательского агента, и сделал снимки экрана для подтверждения (код выше). Наш сайт довольно четко определен и обычно не меняется от браузера к браузеру, так что это скорее мера предосторожности. - Я также пытался внести изменения, которые преднамеренно заставляли бы сайт выглядеть по-разному при использовании в разных браузерах. Они по-прежнему захватываются PhantomJS одинаково, независимо от того, что я меняю.

** Отказ от ответственности: как уже отмечалось, я относительно новичок в PhantomJS. Я прочитал большую часть документации и связанных сообщений, но пока не нашел ответа на свой вопрос. Я также новый веб-разработчик (много сделал бэкэнд-программирования, поэтому я не обязательно начинающий программист), поэтому, возможно, мои «преднамеренные» изменения были неправильными? Или, возможно, я неправильно использую атрибут пользовательского агента?

Пожалуйста, дайте мне знать, если я могу быть более конкретным. - Любая / вся помощь будет принята с благодарностью!


person SeanRamzan    schedule 24.09.2016    source источник
comment
Конечно, может выглядеть иначе.   -  person Artjom B.    schedule 24.09.2016


Ответы (1)


Конечно, может выглядеть иначе. Некоторые веб-серверы по умолчанию отвечают страницей фиксированной ширины. Если вы специально задали строку пользовательского агента, известную веб-серверу и обозначающую мобильный браузер, вы можете получить оптимизированную для экрана версию страницы.

PhantomJS имеет окно просмотра по умолчанию 400 x 300 пикселей. Это означает, что мобильные версии страниц, скорее всего, отображаются должным образом. Страницы с фиксированной шириной могут увеличить размер области просмотра.

Не все сайты реагируют по-разному в зависимости от строки пользовательского агента. Имейте в виду, что страница, скорее всего, будет выглядеть по-другому, если вы делаете снимки экрана во время выполнения нескольких скриптов, ничего не меняя, потому что некоторые страницы, а также объявления часто меняются.

person Artjom B.    schedule 24.09.2016
comment
Спасибо за это! - На самом деле я устанавливаю свои собственные настройки области просмотра. Предотвратит ли это изменение результатов в разных браузерах при изменении пользовательского агента? Причина, по которой я спрашиваю, связана с тестами, которые я провел выше. Я использовал пользовательский агент веб-браузера Chrome, а затем использовал пользовательский агент мобильного сафари. Но результаты выглядели одинаково. Возможно, это потому, что я определил область просмотра? - person SeanRamzan; 26.09.2016
comment
Некоторые веб-сайты вообще не обнюхивают строку пользовательского агента и вместо этого полагаются на размер области просмотра, используя адаптивный дизайн. - person Artjom B.; 26.09.2016
comment
Ах, я вижу, так что это может быть проблемой. - Большое спасибо @Artjom за помощь, очень помогло прояснить ситуацию! - person SeanRamzan; 29.09.2016