File size: 2,034 Bytes
0901162
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
from firebase_admin import credentials
from firebase_admin import firestore
import threading
from firebase_admin import db
# Import the Firebase Admin SDK
import firebase_admin
from datetime import datetime
import time
import Cleaning
from collections import Counter
def current_milli_time():
    return round(time.time() * 1000)


import Server.Classes as Classes
db=firestore
# Firebase ininlaziton
cred = credentials.Certificate(
    "text-to-emotions-firebase-adminsdk-8isbn-dffbdf01e8.json")
firebase_admin.initialize_app(cred)

# for doc in docs:
#     print(f"{doc.id} => {doc.to_dict()}")
all_reviews = db.collection("complaints")
# Create a query against the collection
today_date = current_milli_time()
documents_to_summarize = all_reviews.where("summary","==",None).where("date",'==',today_date).get()
feedbacks = db.collection("feedbacks").where("feedbacks","==",False)


documents=[]
#get all documents for today that have no summary
def get_all_document():
    for doc in documents_to_summarize:
        document =Classes.Shakwa.from_dict(source=doc.to_dict())
        documents.append(document)
    return documents



def get_num_of_words():
    for doc in documents_to_summarize:
        print(len(doc.complaintbody))

def shakwa_common_words():
    for doc in documents_to_summarize:
        words_in_docs=" ".join(doc)
        words_in_docs = Cleaning.txt_preprocess(words_in_docs)
    most_common_words=Counter(words_in_docs)
    return dict(most_common_words)

def feedback_common_words():
    for feedback in feedbacks:
        words_in_feedback=" ".join(feedback)
        words_in_feedback = Cleaning.txt_preprocess(words_in_feedback)
    most_common_words=Counter(words_in_feedback)
    return dict(most_common_words)

def get_most_common_places():
    dic_place_count={}
    governorates=all_reviews.governorate
    for gov in governorates:
        if gov not in dic_place_count.keys():
            dic_place_count[gov]=0
        else :
            dic_place_count[gov]+=1
    return dic_place_count