pdf文件暂存

parent 46c2c770
......@@ -10,8 +10,8 @@
from flask import Flask
from flask_restful import Api
from app.router.version1 import add_route
from app.api.engine import work_dir
from app.api.engine import template_folder
app = Flask(__name__, template_folder=work_dir+'/app/templates')
app = Flask(__name__, template_folder=template_folder)
api = Api(app)
add_route(api)
......@@ -20,6 +20,8 @@ from sqlalchemy.orm import sessionmaker
env = sys.argv[-1]
work_dir = os.getcwd()
CFG_FILEPATH = work_dir + '/app/config/config.yaml'
template_folder = work_dir+'/app/templates'
pdf_folder = work_dir+'/app/pdf/'
config = yaml.load(open(CFG_FILEPATH, 'r'), Loader=yaml.FullLoader)
......
......@@ -6,10 +6,15 @@
# @Email : acepengxiong@163.com
# @Software : PyCharm
# -----------------------------------------------------------------------------
import uuid
from flask_restful import Resource, reqparse
from flask import request, render_template
from flask import make_response
from app.utils.html_to_pdf import html_to_pdf
from app.api.engine import pdf_folder
class OrderHandlers(Resource):
"""."""
......@@ -28,7 +33,9 @@ class OrderHandlers(Resource):
{'name': 'fy', 'age': 84, 'gender': '女'}
]
params = {'a': 'hello', 'b': 'world'}
resp = make_response(render_template('student.html', student=STUDENT_LIST, params=params))
template = render_template('student.html', student=STUDENT_LIST, params=params)
html_to_pdf(template, pdf_folder + str(uuid.uuid4()) + '.pdf')
resp = make_response(template)
resp.headers['Content-Type'] = 'text/html'
return resp
......
# -*- encoding: utf-8 -*-
# -----------------------------------------------------------------------------
# @File Name : __init__.py.py
# @Time : 2020/11/23 下午4:11
# @Author : X. Peng
# @Email : acepengxiong@163.com
# @Software : PyCharm
# -----------------------------------------------------------------------------
......@@ -8,7 +8,7 @@
Welcome to Old Boy EDU
{{params.a}}{{params.b}}
<div>{{ student }}</div>
<table border="1xp">
<table border="1xp" bgcolor="blue">
{% for foo in student %}
<tr>
<td>{{ foo.name }}</td>
......
......@@ -10,7 +10,7 @@
import pdfkit
from PyPDF2 import PdfFileMerger, PdfFileReader, PdfFileWriter
def html_to_pdf():
def html_to_pdf(source_path, target_path):
options = {
'--enable-local-file-access': '--enable-local-file-access',
'encoding': "utf-8",
......@@ -23,10 +23,9 @@ def html_to_pdf():
'margin-left': '0mm'
}
url1 = 'http://www.qimontech.com'
# url = 'http://baidu.com'
url2 = 'https://manage.meerkat.top'
pdfkit.from_url(url1, '/Users/pengxiong/Desktop/out5.pdf', options=options)
# pdfkit.from_file('/Users/pengxiong/Desktop/monthReport.html', '/Users/pengxiong/Desktop/out5.pdf', options=options)
# pdfkit.from_url(url1, '/Users/pengxiong/Desktop/out5.pdf', options=options)
pdfkit.from_string(source_path, target_path, options=options)
# pdfkit.from_file(source_path, target_path, options=options)
def merge_pdf(pdfFiles, target_file='/Users/pengxiong/Desktop/combine.pdf'):
""""""
merger = PdfFileMerger()
......
......@@ -337,3 +337,74 @@ TypeError: render_template() takes 1 positional argument but 2 were given
2020-11-23 16:06:12 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:06:12 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:06:15 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:06:15] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:56 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:56] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:57 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:57] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:58 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:58] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:58 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:58] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:59 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:59] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:07:59 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:07:59] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:17 Mon werkzeug INFO * Running on http://127.0.0.1:8000/ (Press CTRL+C to quit)
2020-11-23 16:08:17 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:08:18 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:08:18 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:08:18 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:18] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:19 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:19] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:41 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:41] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:41 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:41] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:42 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:42] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:42 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:42] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:42 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:42] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:42 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:42] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:43 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:43] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:43 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:43] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:50 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:50] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:50 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:50] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:52 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:52] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:52 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:52] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:08:57 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:57] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:08:57 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:08:57] "GET /tamp_course_order/red HTTP/1.1" 404 -
2020-11-23 16:09:05 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:09:05] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:09:05 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:09:05] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:09:30 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:09:30] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:11:02 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/controller/order.py', reloading
2020-11-23 16:11:02 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:11:02 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:11:02 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:14:43 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/controller/order.py', reloading
2020-11-23 16:14:43 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:14:43 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:14:43 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:15:04 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/api/app.py', reloading
2020-11-23 16:15:04 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:15:04 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:15:04 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:16:29 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/controller/order.py', reloading
2020-11-23 16:16:29 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:16:29 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:16:29 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:17:49 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/controller/order.py', reloading
2020-11-23 16:17:49 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:17:49 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:17:49 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order HTTP/1.1" 500 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=style.css HTTP/1.1" 200 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=debugger.js HTTP/1.1" 200 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=jquery.js HTTP/1.1" 200 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=ubuntu.ttf HTTP/1.1" 200 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=console.png HTTP/1.1" 200 -
2020-11-23 16:17:54 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:17:54] "GET /tamp_course_order/order?__debugger__=yes&cmd=resource&f=console.png HTTP/1.1" 200 -
2020-11-23 16:20:18 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/utils/html_to_pdf.py', reloading
2020-11-23 16:20:18 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:20:18 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:20:18 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:20:24 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:20:24] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:21:01 Mon werkzeug INFO * Running on http://127.0.0.1:8000/ (Press CTRL+C to quit)
2020-11-23 16:21:01 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:21:01 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:21:01 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:21:05 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:21:05] "GET /tamp_course_order/order HTTP/1.1" 200 -
2020-11-23 16:22:00 Mon werkzeug INFO * Detected change in '/Users/pengxiong/Desktop/fund_report/app/api/engine.py', reloading
2020-11-23 16:22:01 Mon werkzeug INFO * Restarting with stat
2020-11-23 16:22:01 Mon werkzeug WARNING * Debugger is active!
2020-11-23 16:22:01 Mon werkzeug INFO * Debugger PIN: 191-123-093
2020-11-23 16:22:15 Mon werkzeug INFO 127.0.0.1 - - [23/Nov/2020 16:22:15] "GET /tamp_course_order/order HTTP/1.1" 200 -
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment