def saveRecommendApps(date): apps = MongoUtil.find("app_table", {}) recommendApps = [] tem = [] for app in apps: tem.append(app) for app in tem: recommend_info = getRecommendInfo(app, date) if recommend_info is None: continue if MongoUtil.isExist("recommend_table", { "appid": app["_id"], "date": date }): print(date + " " + app["appname"] + " 已经存在") continue print(app["appname"]) recommendApps.append(recommend_info) MongoUtil.upsert_mary("recommend_table", recommendApps)
def getChainRateStore(appinfo): appid = appinfo["_id"] appname = appinfo["appname"] cataname = appinfo["catagory"] begin_date, end_date, app_incre = getChainIncreRateCapacity( appname, cataname) if app_incre is None: # print(appname) file = open("../file/not_exist/not_exist_apps", "a") is_not_exist.append(appid) file.write(cataname + " ") file.write(appname + "\n") file.close() return capacitys = getDowloadCapacity(appname, cataname=cataname) # print(appname) for incre in app_incre.items(): post = {} post["appid"] = appid post["date"] = incre[0] post["incre_rate"] = incre[1] capacity = capacitys[incre[0]] # print(incre[1],capacity) if incre[1] < 0: return if incre[1] <= 0: post["wilson_lower_rate"] = -WilsonScoreUtil.confidence_2( -incre[1], capacity) else: post["wilson_lower_rate"] = WilsonScoreUtil.confidence_2( incre[1], capacity) # print(post) posts.append(post) MongoUtil.upsert_mary("capacity_rate_table", posts)
def scan_cata_app(cata): posts.clear() results = MongoUtil.find("app_table",{"catagory":cata}) code = 0 apps = [] for item in results: apps.append(item) for app in apps: code+=1 posts.clear() print(code,end=" ") print(app["appname"]) if MongoUtil.isExist("app_detail_descripe",{"appid":app["_id"]}): continue content = read_descripe(cata,app["appname"]) if content is not None: delivery_words(app["_id"],content) print(len(posts)) # print(posts) print() if(len(posts) > 0): MongoUtil.upsert_mary("app_detail_descripe",posts)
#将文本转化为安装数量 def install2num(install): result = (float)(re.findall(r"\d+\.?\d*",install)[0]) if result==0: return 0 if '亿' in install: result*=100000000 if '万' in install: result*=10000 return int(result) allApps = MongoUtil.find("capacity_table",{}) datas = [] code = 0 for appinfo in allApps: code += 1 _id = appinfo["_id"] appid = appinfo["appid"] date = appinfo["date"] capacity = appinfo["capacity"] capacity_num = install2num(capacity) data = {"_id":_id,"appid":appid,"date":date,"capacity":capacity, "capacity_num":capacity_num} print(data) datas.append(data) MongoUtil.upsert_mary("capacity_table",datas) print(len(datas)) #{'date': '2016-12-08', 'capacity': '3.1 万人安装', 'appid': ObjectId('58648f7d82939b10b3d4c46b'), 'capacity_num': 31000}