-
Notifications
You must be signed in to change notification settings - Fork 0
/
ludo_parse.py
executable file
·40 lines (28 loc) · 923 Bytes
/
ludo_parse.py
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
36
37
38
39
#!/usr/bin/env python3
import sys
import regex
import parser
def main(email):
for line in email.splitlines():
if line.startswith('Subject:'):
subject = line
break
text = email
tags = parser.parse_tags(subject)
title = parser.parse_title(subject)
tag_references = regex.TAG_REFERENCE.findall(text)
title_references = regex.TITLE_REFERENCE.findall(text)
try:
for tag_reference in tag_references:
text = parser.replace_tag_reference(text, tags, tag_reference)
for title_reference in title_references:
text = parser.replace_title_reference(text, title, title_reference)
except (IndexError, TypeError, AttributeError):
return email
print(text)
return text
if __name__ == '__main__':
email_file = open(sys.argv[1], 'r')
email = email_file.read()
email_file.close()
main(email)