Skip to main content

Simple server and script for rapidly prototyping Mechanical Turk interfaces

Project description

A simple server and script for rapidly prototyping Mechanical Turk interfaces.

prototurk server

The ProtoTurk package provides prototurk, a Bottle-based webserver for rapidly prototyping Mechanical Turk interfaces. prototurk takes Mechanical-Turk compatible HTML templates and CSV files as arguments:

prototurk [--host hostname] [--port port_number] html_file csv_file

and starts a webserver that, by default, listens on localhost port 8080. prototurk re-reads the HTML template and CSV file from disk with every page refresh. When a user submits the HTML template’s form, the form parameters are logged to stdout.

prototurk does not save any data to database or disk. If you need to run a Mechanical Turk-style server in your Local Environment, please take a look at Turkle.

prototurk-populate script

The ProtoTurk package also includes prototurk-populate, a simple script that takes as arguments the path to a Mechanical-Turk compatible HTML template, the path to a CSV file, and the (1-indexed) row number for the data to use from the CSV file:

prototurk-populate [--output-file OUTPUT_FILE] html_file csv_file csv_row_number

The script outputs a populated HTML template, where the template variables have been replaced with values from the row of the CSV file. By default, prototurk-populate writes the populated HTML template to stdout, but the --output-file flag can alternately be used to write the populated output directly to a (UTF-8 encoded) file.

prototurk-populate makes it easier to validate Mechanical Turk template files using HTML and JavaScript validation tools. Most popular HTML/JavaScript will generate errors about Mechanical Turk-style template variables. prototurk-populate makes it easier to validate populated templates with real data, particularly as part of Continuous Integration workflows.


ProtoTurk can be installed using:

python install

Or from PyPI:

pip install prototurk

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prototurk-0.4.2.tar.gz (137.1 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page