39 lines
1.5 KiB
Markdown
39 lines
1.5 KiB
Markdown
# 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're going to 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](https://tilde.town/~lucidiot)
|
|
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](https://pypi.org/project/xmltodict) package:
|
|
`pip3 install xmltodict`.
|
|
|
|
To generate the feed, run `./geenfeed.py <books.csv >lefeed.xml`.
|