diff --git a/quizz.py b/quizz.py index e23c2da55cc4048bf3d8952e680c9bc8918997f5..f3cdd5afc492e2332db8c41863655b4f7b19fa2a 100644 --- a/quizz.py +++ b/quizz.py @@ -3,19 +3,25 @@ import urllib from random import shuffle +def escape(html): + """Returns the given HTML with ampersands, quotes and carets encoded.""" + return mark_safe(force_unicode(html).replace('&', '&').replace('<', '&l +t;').replace('>', '>').replace('"', '"').replace("'", ''')) + + def quizz() : req = requests.get("https://opentdb.com/api.php?amount=1&difficulty=easy") al = req.json() pas_reponse = [] rep= al['results'][0] - question = urllib.unquote(rep['question']) - reponse= urllib.unquote(rep['correct_answer']) + question = escape(rep['question']) + reponse= escape(rep['correct_answer']) choix = [reponse.encode('utf8')] for f in rep['incorrect_answers'] : - urllib.unquote(f) - pas_reponse.append(f.encode('utf8')) - choix.append(f.encode('utf8')) + + pas_reponse.append(escape(f).encode('utf8')) + choix.append(escape(f).encode('utf8')) shuffle(choix) return {'question' : question.encode('utf8'), 'reponse' : reponse.encode('utf8'), 'choix' : choix, 'pas_reponse' : pas_reponse }