book-fetch
Search Anna's Archive, download epub/pdf, upload to mega:/Books/.
Setup (one-time)
Anna's Archive is DNS-blocked on the VPS. The /etc/hosts override is already in place:
186.2.165.77 annas-archive.li
MEGA is configured via rclone (rclone ls mega:/ to verify).
Usage
cd ~/clawd
.venv-books/bin/python3 skills/book-fetch/scripts/book_fetch.py "TITLE AUTHOR"
Options:
--format pdf— prefer PDF over epub--dry-run— search only, no download--pick -1— interactive result picker--pick N— pick result index N (default: 0)
Download Pipeline
- Search
annas-archive.li→ parsedata-contentattributes for title/author/md5 - Fetch
annas-archive.li/md5/<md5>→ findlibgen.li/ads.phplink - Fetch
libgen.li/ads.php→ extractget.php?md5=...&key=...direct link - Download file with progress bar
- Upload via
rclone copy ... mega:/Books/
Fallback: If no libgen.li mirror exists (newer books), tries Anna's Archive fast/slow download links.
Notes
- New books (2023+) may lack libgen mirrors; fast_download requires AA membership; slow_download is rate-limited
- venv:
~/clawd/.venv-books/(requests, beautifulsoup4, lxml) - Files cached at
/tmp/books/after download - GitHub: https://github.com/zerone0x/book-fetch