[login to view URL] is a website with an English language vocabulary test. The user is presented with a term and tries to click on a synonym. When the user gives an incorrect synonym, the next screen presents the correct answer and the question will be repeated later. If the user answers 4 questions in a row correctly, the level is increased. If the user answers a question incorrectly and the level is greater than 1, the level of difficulty will be decreased. There are 60 levels of difficulty.
This project will scrape and return the following information for every term used in the English Vocabulary of www.freerice.com.
term, level, right choice, wrong choice 1, wrong choice2, wrong choice 3
It is possible to automate this project as follows.
Starting at level 1, record the information above for each term, answering correctly if a term has already appeared (and the correct response has been recorded) or randomly. If the level changes to level 2, answer incorrectly (if the answer is known) or randomly until the question has been answered incorrectly and the level is back goes back to level 1. In this way, it is possible to control the level of difficulty by answering correctly or incorrectly, as appropriate, until it is clear (from, say, 100 questions in a row of repeated terms, without the introduction of a new term) that all terms on level 1 have been hit. Then move on to level 2, etc. There should be a timer to avoid asking questions too fast for the server.
I have done this manually for level one,stopping after recording 80 unique terms. I will test the output returned to me by randomly choosing a level from [login to view URL] and comparing the results of my manual study with the output of this project.