Как использовать PhantomJS в Windows с помощью командной строки

PhantomJS — это автономный сценарий WebKit с мультиплатформой JavaScript API, доступный в таких основных операционных системах, как: Windows, Mac OS X, Linux и другие Unices. Он имеет быструю и встроенную поддержку различных веб-стандартов: обработка DOM, селектор CSS, JSON, Canvas и SVG.

PhantomJS сам по себе имеет множество функций, таких как тестирование веб-сайтов, он позволяет запускать функциональные тесты с такими фреймворками, как Jasmine, QUnit, Mocha, Capybara, WebDriver и многими другими. Это позволяет создавать снимки экрана, автоматизацию веб-сайта, манипулирование документом, мониторинг сети и т. Д.

В этой статье мы узнаем, как управлять PhantomJS из командной строки в Windows и тестировать основные функции, такие как снимки экрана, генерация PDF и т. Д.

Требования

Замечания: Там нет процесса установки, как вы получите .zip файл с двумя папками, Примеры а также бункер (который содержит phantomjs.exe).

Как работает PhantomJS

Представьте себе простой веб-браузер, такой как Google Chrome, готов? Теперь удалите графический интерфейс пользователя (GUI), и вы получите безголовый браузер, это в основном PhantomJS. Они отлично подходят для автоматизации и тестирования веб-страниц программным способом, и PhantomJS является одним из лучших доступных безголовых браузеров.

Начните использовать PhantomJS с cmd.exe

После распаковки загрузочного файла .zip вы получите 2 папки: примеры и корзину. В бен находится исполняемый файл PhantomJS.

Во-первых, откройте терминал Windows cmd.exe и перейдите к пути к корзине phantomJS, выполнив следующую команду:

# In this example, the bin folder is located in the desktop
# Obviously, provide your own path
cd C:\Users\sdkca\Desktop\phantomjs-2.1.1-windows\bin

Замечания: Вы можете просто создать переменную окружения, указывающую на местоположение Phantomjs.exe и выполнить ее из любой точки консоли.

Теперь, когда вы находитесь на пути PhantomJS Вы сможете легко выполнять команды с phantomjs.

Для манипулирования phantomjs вы будете использовать в основном Javascript, для выполнения команды phantomjs он ожидает путь к файлу JS в качестве первого параметра.

phantomjs myjsfile.js

И это все ! Теперь вам нужно только научиться писать подходящий javascript для phantomJS.

Для вашего первого упражнения мы сделаем скриншот веб-сайта Our Code World. Создать screenshot.js файл в том же месте, где находится исполняемый файл phantomjs:

И включите следующий код в screenshot.js файл:

var page = require('webpage').create();
var websiteAddress = 'http://site.com/';
//viewportSize being the actual size of the headless browser
page.viewportSize = { width: 1680, height: 1050 };
//the clipRect is the portion of the page you are taking a screenshot of
page.clipRect = { top: 0, left: 0, width: 1680, height: 1050 };
// Open website
page.open(websiteAddress, function(status) {
// Show some message in the console
console.log("Status:  " + status);
console.log("Loaded:  " + page.url);
page.render('ourcodeworld.png');
phantom.exit();
});

Наконец, выполните следующую команду в командной строке:

phantomjs screenshot.js

Скриншот сообщения об успехе

Дождитесь выполнения, посмотрите сообщение об успехе и снова откройте папку bin.

Скриншот

Наш скриншот сайта был создан, потрясающий и действительно легкий, не так ли?

Известные проблемы с окнами

Если данные передаются неправильно, проверьте, работает ли сеть должным образом.

В частности, в Windows настройка прокси-сервера по умолчанию может вызвать большую задержку в сети. Обходной путь должен полностью отключить прокси, например, запустив PhantomJS с --proxy-type=none аргумент командной строки.

Заключение

Теперь, когда вы знаете, как в основном работает PhantomJS, вы сможете понять документацию и узнать все удивительные функции, которые может предложить PhantomJS.

Как всегда, мы рекомендуем вам проверить документация научиться создавать даже PDF-файлы, удаленную отладку и т. д. Получайте удовольствие!

Ссылка на основную публикацию
Adblock
detector