In [1]:
import htmltag as HT
import random
from htmltag import table, td, tr

In [12]:
# Constants
maxImgs = 5

In [13]:
def genImageID(begin,stop):
    count = 0
    listNum = []
    start= begin
    end = stop
    while count < maxImgs:
        num = random.randrange(start,end)
        if num in listNum: continue
        listNum.append(num)
        count += 1
        
    return listNum

In [14]:
imageID = genImageID(1,1000)

links = ["http://pachy.cs.uic.edu:5000/api/image/src/"+str(i)+"/?resize_pix_w=500" for i in imageID[0:maxImgs]]
imgTags = []
radioShare = HT.input
for url in links:
    imgTags.append(HT.img(src = url,alt = "Unavailable"))

In [16]:
# logic to create the radio buttons
hiddenField = []
shareRadio = []
notShareRadio = []

for i in range(maxImgs):
    hiddenField.append(HT.input(type='hidden',name=imageID[i],value=imageID[i]))
    shareRadio.append(HT.input(type='radio',value='share',name=imageID[i]) + "Share")
    notShareRadio.append(HT.input(type='radio',value='noShare',name=imageID[i]) + "Do Not Share")

In [18]:
tdTags = []
for i in range(maxImgs):
    tdTags.append(HT.td(HT.center(HT.HTML(hiddenField[i]),HT.HTML(shareRadio[i]),HT.HTML(notShareRadio[i])),HT.HTML(imgTags[i])))

trTags = []
for i in range(0,maxImgs-1,2):
    trTags.append(HT.tr(HT.HTML(tdTags[i]),HT.HTML(tdTags[i+1])))

In [19]:
bodyTxt = HT.table(HT.HTML('  \n'.join(trTags)),border="1")

In [31]:
headFile = open("files/header.txt","r")
tailFile = open("files/tail.txt","r")
outputFile = open("files/sampleMTurk.question","w")

for line in headFile:
    outputFile.write(line)
    
outputFile.write(bodyTxt)

for line in tailFile:
    outputFile.write(line)

headFile.close()
tailFile.close()
outputFile.close()

In [25]:
hiddenField


Out[25]:
['<input name="933" value="933" type="hidden">',
 '<input name="315" value="315" type="hidden">',
 '<input name="297" value="297" type="hidden">',
 '<input name="465" value="465" type="hidden">',
 '<input name="531" value="531" type="hidden">']

In [ ]: