feat: Removed docx and added PDF support

This commit is contained in:
2018-03-11 22:00:16 +01:00
parent 655a0461f5
commit 9e1126b621
8 changed files with 119 additions and 62 deletions

29
test.py
View File

@@ -1,41 +1,32 @@
#!/usr/bin/env python3
from flask_api import FlaskAPI
from flask import Flask, request, send_file
from docx_replacement import docx_replace_regex, load_document
from xlsx_replacement import XlsxReplacement
from io import BytesIO
from pdf_merger import PdfMerger
# app = FlaskAPI(__name__)
app = Flask(__name__)
@app.route('/docx-test/docx_replace', methods=['POST'])
@app.route('/pdf-test/pdf_replace', methods=['POST'])
def test_upload():
if request.files is None or len(request.files) == 0:
raise ValueError("Files required!")
if 'xlsx' not in request.files or 'docx' not in request.files:
if 'xlsx' not in request.files or 'pdf' not in request.files:
raise ValueError('Missing xlsx or docx')
xlsx = XlsxReplacement(request.files['xlsx'])
docx = load_document(request.files['docx'])
docx_replace_regex(docx, xlsx)
bio = BytesIO()
docx.save(bio)
bio.seek(0)
return send_file(bio, mimetype='application/vnd.openxmlformats-officedocument.wordprocessingml.document',
attachment_filename=request.files['docx'].filename)
merger = PdfMerger(request.files['pdf'], xlsx)
out = merger.get_new_document()
return send_file(out, mimetype='application/pdf', attachment_filename=request.files['pdf'].filename)
@app.route('/docx-test/testpage')
@app.route('/pdf-test/testpage')
def test_page():
return """
<html><body>
<form action="/docx-test/docx_replace" method="post" enctype="multipart/form-data">
<label>Select DOCX
<input type="file" name="docx" id="docx"></label>
<form action="/pdf-test/pdf_replace" method="post" enctype="multipart/form-data">
<label>Select PDF
<input type="file" name="pdf" id="pdf"></label>
<label>Select XLSX
<input type="file" name="xlsx" id="xlsx"></label>
<input type="submit" value="Upload" name="submit">