It is random and KI doesn't release "drop rates" on anything. Every try is a separate instance of chance regardless of any "drop rate". There are 14 spells possible so your odds change with every spell already learned. I have gone 300+ battles with no spell drops (but I wouldn't know if a spell that I already know was dropped). I have also learned spells in back to back battles. It's random chance every single battle. Let's say it's a "1%" chance every time, so to learn a spell you need to "roll" exactly 71 out of 100 to get a certain spell. It might take you 1 try, it make take 1000 tries. If you already own that spell, you might get 71 hundreds of times without getting the 65 or 21 or 42 you need for another spell. It's just luck of the draw.
Guys for all of you who say 'it's random' that isn't possible because for an item to be 'rare' they need to make a limit to the chance you will learn a spell.
It is random within the programming for Rare and Ultra Rare items and only KI's staff will know this (and will probably not share this info). There is no actual drop rate for anything in the game... playing as long as you have you know that by now.
And, more precisely, the Professor's response was: "We do not release information about the probability of getting an item as a reward from a duel. You may get the item you want on the first try, you may get the item you want on the ten thousandth try. Each duel has exactly the same chance of getting the item, it's not cumulative."