-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdata_transform.py
More file actions
35 lines (26 loc) · 1.01 KB
/
data_transform.py
File metadata and controls
35 lines (26 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import os
from PyPDF2 import PdfFileReader, PdfFileWriter
import metadata as md
# paths
path = os.path.abspath(os.path.dirname(__name__)) + '/public'
raw_question = path + '/raw_question'
path_question = path + '/question'
raw_answer = path + '/raw_answer'
path_answer = path + '/answer'
def write_pdf(mode_path, name, key, val, pdf):
name = name.split('.')[0]
writer = PdfFileWriter()
for i in range(val[0]-1, val[1]):
writer.addPage(pdf.getPage(i))
with open(f'{mode_path}/{name}-{key}.pdf', 'wb') as f:
writer.write(f)
def make_questions(name):
"""make small question pdfs using metadata"""
pdf = PdfFileReader(open(raw_question + f'/{name}', 'rb'))
for key, val in md.questions[name].items():
write_pdf(path_question, name, key, val, pdf)
def make_answers(name):
"""make small answer pdfs using metadata"""
pdf = PdfFileReader(open(raw_answer + f'/{name}', 'rb'))
for key, val in md.answers[name].items():
write_pdf(path_answer, name, key, val, pdf)