From f0432c1cc1e2a58e04f3d18019e3d58b95edda33 Mon Sep 17 00:00:00 2001 From: lasseedfast <> Date: Mon, 6 May 2024 07:46:18 +0200 Subject: [PATCH] Refactor ArangoDB methods to improve performance and readability --- arango_admin.py | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/arango_admin.py b/arango_admin.py index f2064d3..0db0ec7 100644 --- a/arango_admin.py +++ b/arango_admin.py @@ -8,11 +8,43 @@ def truncate(): def clear_info_persons(): persons = list(arango.db.collection("persons").all()) for person in persons: + if 'other' in person: + if person['other']: + arango.db.collection('persons').delete(person) + continue person['info'] = [] person['mentioned_in_interrogation'] = [] arango.db.collection('persons').update(person, merge=False) -clear_info_persons() +def clear_changer_interrogations(): + interrogations = list(arango.db.collection("interrogations").all()) + for interrogation in interrogations: + interrogation['mentioned_persons'] = [] + arango.db.collection('interrogations').update(interrogation, merge=False) + + +def clean_mentioned_as(): + persons = list(arango.db.collection("persons").all()) + for person in persons: + if 'mentioned_as' in person: + mentioned_as = [] + for i in person['mentioned_as']: + if i not in mentioned_as: + mentioned_as.append(i) + person['mentioned_as'] = mentioned_as + arango.db.collection('persons').update(person, merge=False) + +db = arango.db + +cursor = db.aql.execute('for doc in rumors return doc') +rumors = list(cursor) + +for rumor in rumors: + rumor['class'] = rumor['class'].replace('.', '').strip().lower() + db.collection('rumors').update(rumor, merge=False) + + + # persons = list(arango.db.collection("persons").all())