http://mechanize.rubyforge.org/
http://phantomjs.org/ or "its easier to deal with cousin" http://casperjs.org/ for very client heavy sites.
FWIW, you can get away with HTML only scrapers most of the time, you just need to look harder to find all the data. Totally recommend using "View page source" as that would always give you the original HTML vs the possibly altered DOM (after JS has run on the page) that you might see with Dev Tools/Firebug.