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
|