|
@@ -0,0 +1,44 @@
|
|
1
|
+from datetime import datetime
|
|
2
|
+from million.analyze.word_finder import findWords
|
|
3
|
+from million.parse.fb_exports import FacebookExportParser
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+DATA_PATH = './data/'
|
|
7
|
+
|
|
8
|
+parser = FacebookExportParser()
|
|
9
|
+
|
|
10
|
+export = parser.parse(DATA_PATH)
|
|
11
|
+
|
|
12
|
+gros_mots = [
|
|
13
|
+ '.*merde.*',
|
|
14
|
+ 'sexe',
|
|
15
|
+ 'pute',
|
|
16
|
+ 'pé?dé?',
|
|
17
|
+ 'putain',
|
|
18
|
+ 'bite',
|
|
19
|
+ 'encul.*',
|
|
20
|
+ 'cul',
|
|
21
|
+ 'nichon',
|
|
22
|
+ 'gueule',
|
|
23
|
+ 'con(ne)?',
|
|
24
|
+ 'chatte',
|
|
25
|
+ 'niqu.*',
|
|
26
|
+ 'chi(é|e).*',
|
|
27
|
+ 'bais.*'
|
|
28
|
+ ]
|
|
29
|
+
|
|
30
|
+msg_gros_mots = findWords(export.messages, gros_mots)
|
|
31
|
+
|
|
32
|
+msg_gros_mots_grp = {}
|
|
33
|
+
|
|
34
|
+for msg in msg_gros_mots:
|
|
35
|
+ if msg.sender_name not in msg_gros_mots_grp: msg_gros_mots_grp[msg.sender_name] = []
|
|
36
|
+ msg_gros_mots_grp[msg.sender_name].append(msg)
|
|
37
|
+
|
|
38
|
+for name in sorted(msg_gros_mots_grp, key = lambda k: len(msg_gros_mots_grp[k])):
|
|
39
|
+ print(name)
|
|
40
|
+
|
|
41
|
+ for msg in msg_gros_mots_grp[name]:
|
|
42
|
+ time = datetime.fromtimestamp(msg.timestamp_ms / 1000)
|
|
43
|
+ time_str = time.strftime("%d/%m/%Y %H:%M:%S")
|
|
44
|
+ print(f"\t{time_str} : {msg.content}")
|