Dozens B. McCuzzins c3e42563c6 | ||
---|---|---|
Makefile | ||
README.md | ||
books.csv | ||
books.rec | ||
feed.xml | ||
genfeed.py | ||
justfile | ||
requirements.txt |
README.md
Books
This is a catalog of all the books in my calibre library!
If you see a title here you would like to borrow, let me know! I'd be happy to share :)
How To (For me)
- go to calibre and "convert books" -> "create a catalog...."
- save it to the dir
j all
How To (For you)
If you want to browse the collection, I would look at books.rec
.
If you're going to really explore this dataset, I recommend using the awesome csvkit.
=> https://csvkit.readthedocs.io/en/latest/index.html
It will allow you to do stuff like:
- see the headers:
csvcut -n books.csv
- and the see just the columns you want:
csvcut -c 13,4 books.csv
- look at some stats:
csvcut -c languages,size,formats books.csv | csvstat
- find the largest pdfs in the collection:
csvcut -c title_sort,formats,size books.csv | csvgrep -c formats -m pdf | csvsort -c size -r | head
csvjson books.csv | jq | whatever
- show the most recently added books:
csvcut -c 13,1,3 books.csv | csvsort -c timestamp -r | head -n 20
- You can also perform actual SQL queries on it, and convert the data between csv and sqlite database: https://csvkit.readthedocs.io/en/latest/tutorial/3_power_tools.html
RSS feed
An RSS feed has been kindly provided by the Rsszard of Syndication and is available at https://git.tilde.town/dozens/books/raw/branch/main/feed.xml
Generating the feed requires you to have Python 3.7 or later installed, as well
as the xmltodict package:
pip3 install xmltodict
.
To generate the feed, run ./geenfeed.py <books.csv >lefeed.xml
.
TODO
- type definitions for Book