|
#http://packages.python.org/CouchDB/client.html |
|
import couchdb |
|
import json |
|
import pprint |
|
import re |
|
from tidylib import tidy_document |
|
|
|
couch = couchdb.Server('http://127.0.0.1:5984/') |
|
|
|
# select database |
|
docsdb = couch['disclosr-documents'] |
|
|
|
def f(x): |
|
invalid = re.compile(r"ensure|testing|flicker|updating|longdesc|Accessibility Checks|not recognized") |
|
valid = re.compile(r"line") |
|
return (not invalid.search(x)) and valid.search(x) and x != '' |
|
|
|
for row in docsdb.view('app/getValidationRequired'): |
|
print row.id |
|
html = docsdb.get_attachment(row.id,row.value.iterkeys().next()).read() |
|
#print html |
|
document, errors = tidy_document(html,options={'accessibility-check':1,'show-warnings':0,'markup':0},keep_doc=True) |
|
#http://www.aprompt.ca/Tidy/accessibilitychecks.html |
|
#print document |
|
errors = '\n'.join(filter(f,errors.split('\n'))) |
|
#print errors |
|
doc = docsdb.get(row.id) |
|
doc['validation'] = errors |
|
docsdb.save(doc) |
|
|