How I Built a Document-to-Quiz Parser: Turning Messy Word, PDF, and Google Docs into Structured Question Banks
Description and use
ExamParser turns messy Word, PDF, and Google Docs into Canvas‑ready quizzes by inferring structure and emitting QTI 1.2.
Problem
Converting unstructured Word, PDF, and Google Docs into Canvas‑ready quizzes requires inferring questions, types, and answers from layout and styling, not just parsing text.
Outcome
ExamParser transforms messy documents into structured question banks, reducing manual effort and improving consistency for Canvas imports.
Workflow
- Extract blocks with text, style, coordinates, and list status from DOCX, PDF, or Google Docs
- Normalize blocks into a common schema
- Segment blocks into questions using a tolerant regex for numbering
- Classify each question as MCQ, True/False, Cloze, Matching, or Short Answer based on markers
- Extract correct answer(s) by detecting annotations such as asterisks, bold, or "Ans:"
- Emit QTI 1.2 ZIP or Excel/CSV for migration
Evidence
ExamParser … drop in a Word, PDF, or Google Doc and get a Canvas‑ready quiz out.
The single most important design decision: one normalizer, many extractors.
Returning None instead of guessing is the discipline that keeps the tool trustworthy.
- Record date: 2026-10-19T03:41:02.430Z