The Mechanize module is used for automating interaction with websites. Mechanize automatically stores and sends cookies, follows redirects, can follow links, and submit forms. Form fields can be populated and submitted. Mechanize also keeps track of the sites that you have visited as a history.
From the root folder, you can run the get_page example:
To load from a specific URL:
node examples/get_page.js "http://www.cnn.com"
The example gets the page and then performs a
console.log() on all of the returned object data.
For form posting, you can run the submit_form example:
node examples/submit_form.js "http://localhost/"
The example POSTs a username and password to the /login path at the specificied URL
For an example of chaining requests, you can run the submit_form_chain example:
To see an example of chaining to log into Twitter and access the notifications page, run the twitter_notifications example:
node examples/twitter_notifications.js MYTWITTERUSERNAME MYTWITTERPASSWORD
The example gets the Twitter login page, fills out the username and password fields, logs into Twitter, gets the private notifications page, and displays the returned results.
From the mechanize directory, run npm install:
cookiejar >= 2.1.2 libxmljs >= 0.19.5 mime >= 2.3.1 request >= 2.88.0
This borrows heavily from Aaron Patterson's mechanize Ruby gem.