ExamScanUIUC is a python package for adding and analysing tags on exams. It was written by Mark C. Bell and is a complete rewrite of Nathan Dunfield's unpublished "examautomat" program, which uses the same basic strategy for processing hand-graded exams in bulk. It can be run as a Python 2 or Python 3 module.


ExamScanUIUC is available on the Python Package Index. The preferred method for installing the latest stable release is to use pip (included in Python 2.7.9 and Python 3.4 by default):

> python -m pip install examscanuiuc --user --upgrade

ExamScanUIUC requires pdfimages, pdftoppm and zbar.


The packages used by ExamScanUIUC require an updated version of the six package. Since this is included as an Extra package in the included system Python on OS X, Mac users may need to:

  • install Python manually,
  • modify their PYTHONPATH environment variable, or
  • install ExamScanUIUC within virtualenv

as described here.


Once installed, an exam can be tagged by using:

> python -m examscanuiuc.tag exam.pdf

Later, scans of completed exams can be analysed by using:

> python -m examscanuiuc.scan scan.pdf

For full examples of usage, see the ExamScanUIUC documentation, which can be open by using:

> python -m examscanuiuc.doc


The latest development version of ExamScanUIUC is available from BitBucket. Alternatively, you can clone the mercurial repository directly using the command:

> hg clone

And then install by using:

> python install --user