|
@@ -2,6 +2,7 @@ from pymongo import MongoClient,errors,DESCENDING,ASCENDING
|
|
|
from bson.objectid import ObjectId
|
|
from bson.objectid import ObjectId
|
|
|
import datetime
|
|
import datetime
|
|
|
import re
|
|
import re
|
|
|
|
|
+import news
|
|
|
|
|
|
|
|
class db():
|
|
class db():
|
|
|
DB="alexis"
|
|
DB="alexis"
|
|
@@ -45,6 +46,8 @@ class db():
|
|
|
if "keyword" in filter and len(filter["keyword"]) >0:
|
|
if "keyword" in filter and len(filter["keyword"]) >0:
|
|
|
db_filter["kw"]={"$all": filter["keyword"]}
|
|
db_filter["kw"]={"$all": filter["keyword"]}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ #db_filter["kw.0"]={"$exists":False}
|
|
|
pageNumber=0
|
|
pageNumber=0
|
|
|
if "page" in filter:
|
|
if "page" in filter:
|
|
|
pageNumber=filter["page"]
|
|
pageNumber=filter["page"]
|
|
@@ -96,7 +99,7 @@ class db():
|
|
|
return [a.lower() for a in arr]
|
|
return [a.lower() for a in arr]
|
|
|
|
|
|
|
|
def to_regex(self,arr): #"ACH" | "PAYMENT" | "EBAY"
|
|
def to_regex(self,arr): #"ACH" | "PAYMENT" | "EBAY"
|
|
|
- return [ re.compile('\b'+w.lower()+'\b') for w in arr ]
|
|
|
|
|
|
|
+ return [ re.compile('\\b'+w.lower()+'\\b') for w in arr ]
|
|
|
|
|
|
|
|
def get_keywords_list(self):
|
|
def get_keywords_list(self):
|
|
|
kw=self.client[self.DB]["keywords"]
|
|
kw=self.client[self.DB]["keywords"]
|
|
@@ -115,3 +118,16 @@ class db():
|
|
|
"selector":selector,
|
|
"selector":selector,
|
|
|
"name":name,
|
|
"name":name,
|
|
|
"category":0})
|
|
"category":0})
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ def reparse_articles(self,articles,kw):
|
|
|
|
|
+ for a in articles:
|
|
|
|
|
+ #print(a)
|
|
|
|
|
+ art=self.c_articles.find_one({"url":a["url"]})
|
|
|
|
|
+ res=news.match_keywords(kw,art["text"])
|
|
|
|
|
+ #(matches,w_sum,matching)
|
|
|
|
|
+ #if(res["matches"]):
|
|
|
|
|
+ print(res)
|
|
|
|
|
+ self.c_articles.update({"_id":ObjectId(a["_id"])}, {"$set": res })
|
|
|
|
|
+ #matches, kw, weight
|
|
|
|
|
+
|