Shpider is a web automation library for Haskell. It allows you to quickly
write crawlers, and for simple cases ( like following links ) even without
reading the page source.
It has useful features such as turning relative links from a page into
absolute links, options to authorize transactions only on a given domain,
and the option to only download html documents.
It also provides a nice syntax for filling out forms.
An example: