summaryrefslogtreecommitdiff
path: root/main.py
diff options
context:
space:
mode:
authorjvoisin2018-03-06 23:20:18 +0100
committerjvoisin2018-03-06 23:20:18 +0100
commit13d2507d605ca418dfe8abbb63f5de69cd8a6bec (patch)
tree12a02f5a6968f2a89b24b1f5734c229e9d39e386 /main.py
First commit
Diffstat (limited to 'main.py')
-rw-r--r--main.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/main.py b/main.py
new file mode 100644
index 0000000..e4157e6
--- /dev/null
+++ b/main.py
@@ -0,0 +1,46 @@
1import sys
2from shutil import copyfile
3import argparse
4
5from src.parsers import pdf
6
7
8def create_arg_parser():
9 parser = argparse.ArgumentParser(description='Metadata anonymisation toolkit 2')
10 parser.add_argument('files', nargs='*')
11
12 info = parser.add_argument_group('Information')
13 info.add_argument('-c', '--check', action='store_true',
14 help='check if a file is free of harmful metadatas')
15 info.add_argument('-l', '--list', action='store_true',
16 help='list all supported fileformats')
17 info.add_argument('-s', '--show', action='store_true',
18 help='list all the harmful metadata of a file without removing them')
19 return parser
20
21def show_meta(file_name:str):
22 p = pdf.PDFParser(file_name)
23 for k,v in p.get_meta().items():
24 print("%s: %s" % (k, v))
25
26def main():
27 argparser = create_arg_parser()
28 args = argparser.parse_args()
29
30 if args.show:
31 for f in args.files:
32 show_meta(f)
33 return 0
34 elif not args.files:
35 return parser.show_help()
36
37 copyfile(sys.argv[1] + '.bak', sys.argv[1])
38 p = pdf.PDFParser(sys.argv[1])
39 p.remove_all()
40 p = pdf.PDFParser('OUT_clean.pdf')
41 print("ok")
42
43
44if __name__ == '__main__':
45
46 main()