For Goodreads users if you download this tool
https://github.com/PaulKlinger/Enhance-GoodReads-Export
It will convert your current Goodreads library export.csv into one that has two extra columns at the end. One containing every start and finish read dates (so you finally have a list of every read date)
and a genre column, which is basically the common bookshelf list.
They both require a bit of manipulation to be able to format them into importable columns into goodreads (after formatting I end up with about 7 "DR" shelves (date read), and heirarchal genres.
It's all about converting text to columns and finding and replacing characters.
Also, a fun site:
https://almoturg.com/bookstats/
takes you Goodreads library .csv and gives you visual statistics about your shelves.