Revision history for WWW::Search::Scraper (::*).
v3.05 - Fix to NEXT opcode.
Caveat Leptor in Google.
v3.04 - Added Opcodes NEXT, FONT, etc.
v3.03 - Upgrades to Beaucoup, CraigsList, DogPile, and Google.
v3.01 - OPCODES ! ! You can invent and use your own scraping operations in the Scraper frames themselves!
Fixed native_query() so you can change the query and get new results (without re-instantiating
the scraper). Thanks to Alan Derhaag!
v3.00 - Reorganization of distribution files - bundling.
v2.27 - A major correction in the way Scraper discovers the content with the 'A' option.
Significant improvements to NortherLight interface.
Dogpile - now gets all client search engines' results, plus "Search the next 10 engines"!
Added 'SNIP' and 'AQ' scraper frame options.
Several minor fixes to ZIPplus4, finally making it usable again.
Fixed backwardly compatible "new Scraper(engine_name, query, {options})" interface mode.
Fixed documentation of the above, that was causing some confusion out there!
v2.26 - Adapted CraigsList.pm to their new format.
Improvements to Response sub-classing makes it more broadly useful.
v2.25 - Fixed to make compatible with new versions of TidyHTML
(those whose "vers 1st August 2002; built on Aug 8 2002").
Adapted ZIPplus4 to USPS's new format - requires changes in your clients.
More improvements to eBay.pm.
v2.24 - Added "optional array-context" return of Response field values.
Print a correct warning message if WWW::Search is not installed.
Fixed problems associated with using classic WWW::Search "native_query" mode.
Other improvements to eBay's "new" format.
v2.23 - eBay moved their search page from 'search.html' to 'basicsearch.html'.
ZIPPlus4 - problems with "Zip_Code" method solved.
Updated Monster.pm to Monster's new <TABLE> structure.
Updated techies.pm to techie's new format.
Improved test.pl - more engines check for Tidy before proceeding.
Another problem with URI::URL under solaris solved (I hope for good this time!)
v2.22 - Changes to Request/Response module that might help RedHat 7.0 implmentations.
eg/ZipPlus4Fixer.pl - ZipPlus4 fixer - try it!
Simple (regressive) implementation of the WSDL interface.
v2.21 - Improved POD - see ScraperPOD.pm - READ THIS DOCUMENT! WE'VE CHANGED THE DEFAULT
REQUEST MODE FOR MOST SUPPLIED SCRAPER ENGINES FROM 'native' TO 'canonical'!
SEE "What if I *want* native mode?"
Improved Request and Response classes - both auto-generated by default now.
Improved ZIPplus4.pm, computerjobs, Dogpile.
v2.20 - Added eg/Boilerplage.pl - creates boilerplates for new Scraper modules.
Added t/t.t to help some "make test"s work.
v2.19 - Improved make test - uses Test::More for better result logging.
v2.18 - Added BayAreaHelpWanted.com, and ZIPplus4 (ZIP+4 Code Look-up).
Added auto-sub-classing of responses via Response.pm and each scraper "frame".
Added lazy-access to field values resident on the detail page (via auto-sub-classing).
Added 'XPath' as scraping option.
Added Lycos.
v2.17 - Added Beaucoup - yup! Beaucoup's Super Search!
More verbose reports from "make test" (see file 'test.trace' after "make test")
v2.16 - Special fixes to make Scraper work with LWP versions between 5.60 and 5.63
Added 'CLEANUP' as a Scraper operation.
Significant test.pl improvements (Scraper.pm as a "testable" base-class).
v2.15 - Added TidyXML.pm base class for new Scraper modules.
Added Dogpile.com - this is our first TidyXML implementation!
v2.13 - Make Scraper comply with new sanity checks in later versions of WWW::Search.
Upgraded Monster.pm to Monster.com's new "RELATED RESOURCES for <query>" format.
Fix fatal flaw in Brainpower.pm.
Some improvements to "make test".
Improvements in handling of redirects from the search engines.
v2.12 - HotJobs.pm is not working in this version, so we've put it on leave . . .
Make dependant on Tie::Persistent - rt.cpan.org: Ticket #74
Try to be nice to Google.com via LWP::RobotUA.
Improvements in handling "native_query" vs "Request" object.
v2.10 - Improved Google.pm: added "category", "categoryURL", "similarPagesURL",
and "sampleText".
v2.01 - Clarify conflicts between Request's canonical query, WWW::Search's
(and ::Scraper's) native query and options, and each module's
default options. This greatly simplifies the design and usage.
Fixed some problems with Brainpower's details page.
v2.00 - Complete Request/Response classification framework.
v1.39 - Added 'ResultType' parameter to HIT*. Complete refurbishment of Response
generation, old SearchResult type is now a simple sub-type of Response.
You may override this with a 'scraperResultType' option on Scraper->new(),
or better, in the 'HIT*' element of the Scraper module's scraperFrame.
Also completely refurbished the Request end - old style is now a
simple sub-type of Request (auto-converted within Scraper.pm).
Added Request::Job.pm.
The most mature search engine is now Brainpower.pm. It uses Request::Job
properly, in the 'HIT*' element of its scraperFrame.
v1.38 - Fix itsy-bitsy boo-boo in Scraper.pm (was not escaping input strings).
Improved documentation in several of the modules.
Added Scraper::Request module for later abstraction of "requests".
Added Brainpower.com.
v1.37 - Moved Sherlock.pm to WWW::Search::Scraper to avoid namespace collision.
Improved some of the documentation layout (I think).
v1.36 - Added test.pl; fixed bugs discovered thereby in Dice, apartments, eBay, etc.
v1.35 - Added FlipDog.com, and a few features to Scraper.pm (e.g. 'BOGUS', etc).
v1.34 - Introduced SearchResult sub-classing, with illustration in eg/Scraper.pl
Improved reliability of BAJobs.pm
Dice.com changed the result page format, again. I hope this version
of Dice.pm will be more adaptive to Dice.com's future changes.
Added www.computerjobs.com and www.techies.com (which still has a problem)
Added examples: eg/SearchApartments, improved eg/Scraper.
v1.33 - Added www.apartments.com, and eg/Sherlock.pl