def to_search_result(result):
        s = SearchResult()

        s.store_name = "Libgen"
        s.title = result.get("Title", " ")
        s.author = result.get("Author(s)", " ")
        s.price = "FREE!!"
        s.language = result.get("Language", " ")
        s.downloads = result.get("Mirrors", " ")
        s.formats = result.get("Extension", " ")
        s.drm = SearchResult.DRM_UNLOCKED
        s.cover_url = result.get("Img", " ")
        s.detail_item = result.get("Link", " ")

        return s
示例#2
0
def search(query, max_results=10, timeout=60):
    libgen_results = libgen.search(query)
    for result in libgen_results.results[:min(max_results,
                                              len(libgen_results.results))]:
        s = SearchResult()

        s.title = result.title
        s.author = result.author
        s.series = result.series
        s.language = result.language

        for download in result.downloads:
            s.downloads[download.format] = download.url

        s.formats = ', '.join(s.downloads.keys())
        s.drm = SearchResult.DRM_UNLOCKED
        s.cover_url = result.image_url

        # don't show results with no downloads
        if not s.formats:
            continue

        yield s