1. 程式人生 > >python編寫的一個簡單那的WSGI PDF server 的代碼

python編寫的一個簡單那的WSGI PDF server 的代碼

tar cal rev 內容 lose info 一次 開啟 turn

將開發過程比較常用的內容段備份一次,下邊內容是關於python編寫的一個簡單那的WSGI PDF server 的內容。

# basic_wsgi_pdf_server.py
# Basic WSGI PDF server in Python.
# Adapted from:

from PDFWriter import PDFWriter
from wsgiref.simple_server import make_server

host = ‘localhost‘
port = 8888

def app(environ, start_response):
    path = environ[‘PATH_INFO‘]
    method = environ[‘REQUEST_METHOD‘]
    print "path:", path
    print "method:", method

    #response = ‘This is the page for "{}"‘.format(path)

    lines = [
            "Jack and Jill went up the hill",
            "Humpty Dumpty sat on a wall,",
            "‘You are old, Father William,‘ the young man said,",
            "Master of all masters"
            ]

    pdf_filename = "Nursery-rhymes-and-stories.pdf"
    pw = PDFWriter(pdf_filename)
    pw.setFont("Courier", 12)
    pw.setHeader("Excerpts from nursery rhymes and stories")
    pw.setFooter("Generated by xtopdf and basic_wsgi_pdf_server")

    for line in lines:
        pw.writeLine(line)
        pw.writeLine(" ")
    pw.close()

    with open(pdf_filename, "rb") as fil:
        response = fil.read()

    #start_response(‘200 OK‘, [(‘Content-type‘, ‘text/html‘)])
    start_response(‘200 OK‘, [(‘Content-type‘, ‘application/pdf‘)])
    return [response]

make_server(host, port, app).serve_forever()

在命令行下運行下面的代碼開啟服務:

pythonbasic_wsgi_pdf_server.py

python編寫的一個簡單那的WSGI PDF server 的代碼