diff options
Diffstat (limited to 'web.py')
-rw-r--r-- | web.py | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -1,7 +1,11 @@ #!/usr/bin/python2.6 # coding: utf-8 +from __future__ import with_statement import os -import json +try: + import json +except ImportError: + import simplejson as json from StringIO import StringIO from whoosh.index import open_dir from whoosh.qparser import QueryParser @@ -13,6 +17,7 @@ import flask import pyPdf import werkzeug import subprocess +from compat import str_format app = flask.Flask("booksearch") @@ -38,7 +43,7 @@ def pdf_to_image(filepath, page, size): size = 260 density = 60 + 0.15 * size - app.logger.debug("Convert PDF to image page={0} size={1} density={2} filepath={3}".format(page, size, density, filepath)) + app.logger.debug( str_format("Convert PDF to image page={page} size={size} density={density} filepath={filepath}", page=page, size=size, density=density, filepath=filepath )) def generator(process, input): input.seek(0) @@ -51,7 +56,7 @@ def pdf_to_image(filepath, page, size): out = pyPdf.PdfFileWriter() out.addPage(page) out.write(pdffile) - process = subprocess.Popen(["/usr/bin/convert", "-density", "{0}".format(density), "-resize", "{0}x".format(size), "pdf:-", "jpeg:-"], + process = subprocess.Popen(["/usr/bin/convert", "-density", str(density), "-resize", str(size), "pdf:-", "jpeg:-"], stdin=subprocess.PIPE, stdout=subprocess.PIPE) return werkzeug.Response(generator(process,pdffile), mimetype="image/jpeg") @@ -76,7 +81,7 @@ def do_page_file(docnum): document = reader.stored_fields(docnum) filepath = document['path'] page = document['pagenumber'] - 1 - app.logger.debug("Extract page={0} from filepath={1}".format(page, filepath) ) + app.logger.debug(str_format("Extract page={page} from filepath={filepath}", page=page, filepath=filepath)) inputfile = pyPdf.PdfFileReader(file(filepath, 'r')) pdfpage = inputfile.getPage(page) outbuf = StringIO() @@ -86,7 +91,7 @@ def do_page_file(docnum): outbuf.seek(0) r = werkzeug.Response(outbuf, mimetype="application/pdf") client_filename = os.path.basename(filepath)[:-3] - client_filename += u".Page-{0}.pdf".format(page) + client_filename += str_format(u".Page-{page}.pdf", page=page) r.headers.add('Content-Disposition', 'attachment', filename=client_filename) return r |