[Unsupported] Leech training script

Is there A way to view this count or did you count it yourself? I’m horrified to find that I have 585 leeches, and it looks to be about half and half vs meaning and reading.

I’m correct in meaning more than 92%. The last 8% are due to my non-well knowing of english words.
By far, my leeches are due to reading: less than 70% correct.

I have another suggestion. Personally, I don’t want to study my leeches (or anything) too close to their reviews showing up. Could you add some customizable timer (different per SRS level) to only do reviews when there is at least that amount of time until the next review? For example, if an SRS level is 14 days in total, I may only want it to show up for study if there is at least 10 days left until the next review. Feel free to look at how I did it in my modified version of self study.

1 Like

@AngelTenshi You can see the leeches (and at the very bottom of the page the count) here: https://wanikanitools-golang.curiousattemptbunny.com/leeches.

@Heiopei, @ArnaudD You found me out. The script only handles the first 125 synonyms. I made the assumption that folks would only have 10s of synonyms. To get them all and stay up to date I need to work on a proper caching solution to avoid hitting the WK API rate limit. I’ll @mention you when I have this implemented, it might take me a few days.

@seanblue I think that locking out leeches for review based on how soon until their next review (and conditional on their srs stage) is a great improvement. I’ll need proper caching solution for this too, so it might take a few days.

@BobaGakusei Thanks. I’ll give merged posting a go in order to be less spammy.


Thankk you @hitechbunny. I look forward to reacquainting myself with my 234 leeches. We’ll be good friends soon.

1 Like

Thanks a lot for considering our specific problems :wink:

1 Like

Brilliant ! Love this script
only had 16 leeches

Can you just add an automatic validation is the word is right ?!
not pressing enter all the time would be great cause I double click a lot and it counts as a mistake …

1 Like

Wow, what an awesome script! Thank you so much. Apparently I have 43 leeches.

Now, this is just me nitpicking… but there is some kind of shadow on the leech circle compared to the lesson and review circles.


So I’ve gone through one set of 15 now and I have some suggestions.

  1. Allow a way to see all definitions (and readings, though that’s relevant less often). Personally, I like checking all definitions after I get a word right.
  2. Require getting an item right more that once - perhaps 5 times or some customizable number? One of the things I like about self study is that I can really drill items by looping over a level 5-10 times. Getting it right once simply isn’t enough to reinforce it.

looks even worse when using the dark style wanikani because its completely highlighted. leech-bug

1 Like

Until you do, could you add an option to only review reading items?

I’m also wondering about the shadow. Would look nicer without it. :slight_smile:

I just wanna thank you so much for creating this script. This will clearly be a tool that will help me avoid burning out. 5 days ago I had 65 leeches, but now I only have 45! WK feels so much easier now that I don’t waste that much energy on leeches. I suspect the number will decrease even more since 31 of my leeches are in Guru (and it takes more than 5 days to review all of them).

Again, thank you :slight_smile:

1 Like

Could you explain why it accepts any of the kanji readings?

I had the 欠 kanji in my leeches list, and it accepted my answer of か. However, when 欠 later appeared in my WK reviews, it wanted けつ instead. I had been training myself on the wrong reading during leech reviews, which added to my confusion.

This is a great script which I will be using a lot, but I think that is also a legitimate bug.

1 Like

Hmm. Good question. I actually don’t know which of the readings types (kunyomi / nanori / onyomi / blank ("")) are or aren’t accepted for kanji. Does anyone on the thread know the answer?

      "data": {
        "character": "欠",
        "character_images": null,
        "characters": "",
        "component_subject_ids": [
        "created_at": "2012-03-26T22:56:11.000000Z",
        "document_url": "https://www.wanikani.com/kanji/%E6%AC%A0",
        "level": 7,
        "meanings": [
            "meaning": "Lack",
            "primary": true
        "parts_of_speech": null,
        "readings": [
            "primary": true,
            "reading": "けつ",
            "type": "onyomi"
            "primary": false,
            "reading": "か",
            "type": "kunyomi"
        "slug": "欠"
      "data_updated_at": "2017-10-04T18:56:23.703801Z",
      "id": 646,
      "object": "kanji",
      "url": "https://www.wanikani.com/api/v2/subjects/646"

Sorry but may I ask what is a “leech” ? hmhm

@Anhle Check out this thread:

@hitechbunny Maybe try looking back at the self study script. Somehow rfindley got that to do the same shake-if-wrong-reading behavior that is done in reviews.

I think the trick is looking at the primary field. It is true for the onyomi here (けつ) and not true for the kunyomi (か). The correct reading is the one where “primary === true”.

Aside: There’s one more field called “primary” next to the kanji meaning. I have a feeling that for meanings, even “primary === false” is accepted (since those would be synonyms). I think that this is how WaniKani chooses which meaning to show by default beneath the kanji during the learning phase.

For readings, you can have the script hint that the other reading is preferred if they enter the wrong type.

1 Like

How come I got more than 200 leeches. I may … up somewhere, shit :frowning:

Overall I really like the way this script works. I plan to use this to help with the numerous leaches I’ve built up through fast leveling. Still, there are a few things I would like to add, things which would would really make this app more convenient. If I may

  1. Not having to double press n. Essentially making it so the system would just accept n as ん. A lot of the time whenever I mess up a word with n, it is not because I don’t know it, but because the system didn’t change it when I though it would.
  2. Customization of what items to review. That way, if you feel like there is an item is more of a leach than other, you can decide to review it more times.
  3. An ignore script for typos
  4. All of the synonyms displayed when putting the wrong answer. That way, you can know the many different meanings of the word.

Other than that, I think this script really does an excellent job. I can already see it being a boon to my future WaniKani memorization.