CasperJS можно использовать для навигации, парсинга и тестирования. В этом уроке мы увидим, как очищать данные с помощью CasperJS. Для запуска casperJS вам понадобится безголовый браузер, такой как PhantomJS или SlimerJS. Для последних версий casperJS требуется PhantomJS 1.9+.
Установка PhantomJS:
sudo apt-get install libfontconfig1 cd /opt wget https://phantomjs.googlecode.com/files/phantomjs-1.9.1-linux-x86_64.tar.bz2 tar xjf phantomjs-1.9.1-linux-x86_64.tar.bz2 rm -f phantomjs-1.9.1-linux-x86_64.tar.bz2 ln -s phantomjs-1.9.1-linux-x86_64 phantomjs sudo ln -s /opt/phantomjs/bin/phantomjs /usr/bin/phantomjs
Установка CasperJS:
cd /opt/ git clone git://github.com/n1k0/casperjs.git cd casperjs ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
Простой JS-скрипт для входа и печати заголовка страницы:
phantom.casperTest = true; var fs = require('fs'); var utils = require('utils'); var casper = require('casper').create({ pageSettings: { loadImages: false, // The WebPage instance used by Casper will loadPlugins: false, // use these settings userAgent: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36' } }); url = <url-of-login-page> casper.start(url, function() { // replace in below format form.<class-name> or form#<form-id> this.fill('form.<form-class>', { email: <enter-email-id-here>, password: <enter-password-here> }, true); }); casper.then(function() { this.echo(this.getTitle()); }); casper.run();
Этот скрипт войдет на сайт и напечатает заголовок страницы. В этом скрипте мы выполнили как навигацию, так и парсинг.