Comparisons » get web pages

If Unix.open_process_in with curl or wget is not sufficient...

ocamlnet

Netclient example
let s = Http_client.Convenience.http_get "http://www.ibm.com" in
  output_string stdout s

Compile with

ocamlfind ocamlc -package netclient -linkpkg file.ml

Example of tools using Netclient:

Ocaml binding to curl

high level details like maintaining cookies across calls (for session continuity and logins):

perl4caml and WWW::Mechanize

(WWW:Mechanize is already wrapped in perl4caml). Allows to easily navigate websites (click links, push buttons, fill in forms and so on).