'Gutenberg\'s ODPS feed is poorly implmented and has a number of issues
which require very special handling to fix the results.
Issues:
* "Sort Alphabetically" and "Sort by Release Date" are returned
as book entries.
* The author is put into a "content" tag and not the author tag.
* The link to the book itself goes to an odps page which we need
to turn into a link to a web page.
* acquisition links are not part of the search result so we have
to go to the odps item itself. Detail item pages have a nasty
note saying:
DON\'T USE THIS PAGE FOR SCRAPING.
Seriously. You\'ll only get your IP blocked.
We\'re using the ODPS feed because people are getting blocked with
the previous implementation so due to this using ODPS probably
won\'t solve this issue.
* Images are not links but base64 encoded strings. They are also not
real cover images but a little blue book thumbnail.'

def search(self, query, max_results=10, timeout=60):

    for result in search(query, max_results, timeout):
        (yield result)
