webnav
v0.0.7
Published
Navigate a webpage the easy way.
Downloads
7
Readme
Webnav
Navigate webpages the easy way.
Installation
Note: you may need to install PhantomJS
$ npm install --save webnav
var webnav = require('webnav');
Methods
All methods return webnav
. This allows for method chaining.
open
webnav.open(url, callback);
Opens a webpage from a url in PhantomJS, then executes the callback. The callback is passed a status
parameter, which is set to 'success'
if the webpage is opened successfully.
output
webnav.output(callback);
Specifies how the program should handle console output. Console output is passed as the first parameter into the callback function. By default, output is set to log messages preceded by '>'
.
inject
webnav.inject(filepath);
Injects a local file into the open webpage. Any variables and functions injected from inside a js file can then be accessed.
then
webnav.then(action, time);
Specify an action to take. The action parameter is a function, which is passed a phantom page
object as its first argument. The page
object is how you interact with the webpage. The time parameter specifies a delay in milliseconds before the next action should be taken.
start
webnav.start(callback);
Starts phantom with the current settings in webnav
. The callback parameter is executed once phantom has started. Does not return anything.
exit
webnav.exit();
Stops phantom from running and exits.
Example
var webnav = require('webnav');
webnav
.open('http://my.site.com/path', function (status) {
console.log('opened site?', status);
})
.output(function (msg) {
console.log('console says:', msg);
})
.inject('./js/variables.js')
.inject('./js/functions.js')
.then(myFunction, 2500)
.then(exitFunction, 1000)
.start(function () {
console.log('started');
});
function myFunction(page) {
page.evaluate(function() {
// do something
});
}
function exitFunction() {
webnav.exit();
}