felinejumper: Cosima Niehaus smiling in lab coat (science)
felinejumper ([personal profile] felinejumper) wrote2020-01-20 09:10 pm

ao3 stats 14 months later

So like, a year ago (14 months, OKAY, it's been a year), I drafted some thoughts on how to make an AO3 stats retriever. Briefly: I read a lot of fic, I'd like to know how much and any other stats, I'm extremely lazy about tracking my reading.


I have MADE PROGRESS as of this weekend, which is to say I am tweaking somebody else's unofficial Python API from here—they solved the authentication token problem, enormous round of applause to the code being clean and readable and adaptable. And to me, for someday making my first my first pull request in a public repo around the issues that have come up so far


So, the to-do list (lol), updated and for future reference, but with some of the hardest parts done.




  1. Pull history, bookmarks, read later lists

    • [x] pull history, first twenty

    • [x] pull bookmarks, first twenty

    • [x] pull read later, first twenty

    • [ ] retrieve entirety of history/bookmarks/read later, as opposed to page 1 (OTW pleeeassseee database API!). This is basically: get the # of available pages, loop through those pages. I think trivial?

    • [ ] fixes for series import (currently fails to pull series ID) in bookmarks code; history doesn't record/register series pages as such


    • [ x] fixes for gifts (currently puts recipient's name as title)



  2. Retrieve specified time frame (last visited as marker?)

    • [ ] bookmarks added to READ list

    • [ ] read later items removed from history (assume these UNREAD) [optional]

    • [ ] check history works for kudos given by user + add to read list

      • slightly concerned here about AO3 booting me, so it'd be nice to run it on the most limited possible sample set

      • obviously only functional if you want kudos as counting mechanic





  3. Now that we've parsed + cleaned all our data for relevant fics:

    • fic title, author, fandom, relationship category, word count, last visited + times visited



  4. ???

  5. Seaborn graphs! Quantified joy/depression/whatever fic does for you!


Some bonuses:



  • Operationalize it so fandom can use it!

  • graph that shit with:

    • Time of day/year stats

    • last date possible, full visitation history not :(

    • fandoms, pairings, categories, tags plotted across time (ranked in order of perceived difficulty)



  • Clicking through chapters vs reading all at once? when does it count as a hit? Framed this question wrong, I think we just have "visited" or not for the whole fic :/

  • How to approach re-reads? You could imagine a clustered “many hits/short time” for a long fic counting as a read, and a short fic counting as many reads unfortunately not possible w/o a real API from AO3 -- we can get "visited six times" but only the last time visited is exposed ("Last visited on xx/xx/xxx")