Another option would be to open up the developer console and investigate what happens when an episode is completed (hint: XHR).
You'll then be able to scrape the episode list of a series for the lesson IDs and programatically hit the required API endpoint.
This could arguably be considered as abuse of the service but I consider it more an exercise in learning.
So long as you don't hit the API too much and too fast then it's probably okay (but that is ultimately up to Jeffrey)? Please be responsible and use setInterval or setTimeout or something along those lines and stagger the POST requests.
I'd give you the code (got it working rather quickly) but that would be too easy. As I said, consider this an exercise. :D
Also, remember folks - the XP and levels are ultimately useless. You won't (l)earn anything worthwhile if you do this without having actually watched the episodes.