wopian / tracker-killer

💉 Library performance tester for media tracking sites
MIT License
7 stars 2 forks source link
anime annict api-client kitsu manga myanimelist nodejs

Tracker Killer

release badge travis badge david badge david dev badge

cc maintainability badge cc debt badge cc issues badge cc loc badge

This was built as an experiment to see how well anime/manga tracking sites deal with ludicrously large libraries. As such, it currently allows testing the following:

Results

Anime

Service Library Size Anime Loaded Page Load Time (seconds) Network (seconds) API
Loading Render Script Paint Response Time (seconds) Size (MB) Type
AniDB Not Yet Implemented
AniList Not Yet Implemented
AnimePlanet No API Available
Annict Not Yet Tested
Kitsu Not Yet Tested
MyAnimeList (Classic) 12603 12603 42.8 2.3 22.8 11.2 0.7 5.2 10.1 XML
MyAnimeList (Modern) 300 Not Yet Tested

Manga

Service Library Size Manga Loaded Page Load Time (seconds) Network (seconds) API
Loading Render Script Paint Response Time (seconds) Size (MB) Type
AniDB Not Yet Implemented
AniList Not Yet Implemented
AnimePlanet No API Available
Kitsu Not Yet Tested
MyAnimeList (Classic) 42579 Library page 500s API 500s XML
MyAnimeList (Modern)* 300 Not Yet Tested

* Page becomes unresponsive after loading up to 20700 manga, consuming ~20% CPU and ~4 GB of RAM on Chrome 56 and Edge 14

Usage

⚠️️ This will completely overwrite all library data on these services without warning ⚠️️

Requirements

Setup

  1. Download source code:

    git clone https://github.com/wopian/tracker-killer.git
    cd tracker-killer
  2. Install dependencies:

    yarn
    # or
    npm install
  3. Rename src/env.template.js to src/env.js and add the required details

  4. Run the script:

    yarn start
    # or
    npm start
  5. Debugging (ALL, INFO (default), DEBUG, WARN, ERROR & TRACE)

    yarn start -- DEBUG
    # or
    npm start -- DEBUG

Reporting

WIP

./node_modules/.bin/phantomas https://myanimelist.net --har=./report/myanimelist/har --film-strip --film-strip=./report/myanimelist/.filmstrip --film-strip-prefix=''

Releases

See CHANGELOG

License

All code released under the [MIT license]