def list_pilots(request): names_list=request.POST["names"] #names_list=re.sub(r"&#\w\w;"," ",names_list) #names_list=names_list.rstrip() s=names_list.replace("\r\n"," ") names_list=s.split(" ") print "names list",names_list t=[] for name in names_list: if not name: continue d={} d["name"]=name if get_pilot_from_db(d): """TODO add kills attackers to search """ t.append(d) continue else: """ id1=0 pilots_list=pilot.objects.filter(name__iexact=name) #pilot.objects.filter(pk=0).delete() if len(pilots_list)==1: id1=pilots_list[0].id d["name"]=pilots_list[0].name c=pilots_list[0].corp if c: print c.name,c.id d["corp_name"]=c.name d["corp_id"]=c.id """ #else: pilots_list=character_id.get_id_by_pilot_name(name) for i1 in pilots_list: if i1["name"].upper()== name.upper(): id1=int(i1["characterID"]) d["name"]=i1["name"] if int(id1): pilot(name=i1["name"],id=id1).save() d["id"]=id1 t.append(d) break """ if int(id1): d["id"]=id1 t.append(d) """ for i in t: print i["name"],i["id"] names_list=t if names_list : return render(request,"analizer/pilots_list.html",{"pilots":names_list, }) return HttpResponse(" Yon in pilots list stub") else: return render(request,"analizer/index.html",{"error_message": "Absent pilots names", })
def add_json2db(kills_data,pilot_id=None,corp_id=None): if not pilot_id and not corp_id : return if pilot_id: t=pilot.objects.get(id=pilot_id).cached if not t: def check_x_update_time(kill): return True else: def check_x_update_time(kill,x=t): return kill["killTime"]>t b_pilots={} for p in pilot.objects.all(): b_pilots[p.id]=p s_pilots=[] b_corps={} for c in corp.objects.all(): b_corps[c.id]=c s_corps=[] ac=0 for k in kills_data: if not check_x_update_time(k): break if not kill.objects.filter(killID=k["killID"]).exists(): pid=int(k["victim"]["characterID"]) if pid in b_pilots: p=b_pilots[pid] else: p=pilot(id=k["victim"]["characterID"], name=k["victim"]["characterName"],) s_pilots.append(p) b_pilots[pid]=p cid=int(k["victim"]["corporationID"]) if cid in b_corps: c=b_corps[cid] else: c=corp(id=k["victim"]["corporationID"], name=k["victim"]["corporationName"],) s_corps.append(c) b_corps[cid]=c """ if int(k["victim"]["allianceID"]): a=alli(allianceID=k["victim"]["allianceID"], allianceName=k["victim"]["allianceName"],) a.save() else: a=None p.save() c.save() """ a=None #my_datetime = timezone.make_aware(k["killTime"], timezone.get_current_timezone()) kk=kill(killID=k["killID"], killTime=k["killTime"], solarSystemID=k["solarSystemID"], corporationName=k["victim"]["corporationName"], characterName=k["victim"]["characterName"], allianceName=k["victim"]["allianceName"], corporationID=c, allianceID=a, characterID=p, ) kk.save() for a in k["attackers"]: """ p=pilot(id=a["characterID"], name=a["characterName"],) c=corp(id=a["corporationID"], name=a["corporationName"],) p.save() c.save() if int(a["allianceID"]): al=alli(allianceID=a["allianceID"], allianceName=a["allianceName"],) al.save() else: al=None """ ac+=1 pid=int(a["characterID"]) if pid in b_pilots: p=b_pilots[pid] else: p=pilot(id=a["characterID"], name=a["characterName"],) s_pilots.append(p) b_pilots[pid]=p cid=int(a["corporationID"]) if cid in b_corps: c=b_corps[cid] else: c=corp(id=a["corporationID"], name=a["corporationName"],) s_corps.append(c) b_corps[cid]=c al=None aa=attacker(corporationID=c, allianceID=al, characterID=p, killID=kk, securityStatus=a["securityStatus"], weaponTypeID=a["weaponTypeID"], finalBlow=a["finalBlow"], shipTypeID=a["shipTypeID"], corporationName=a["corporationName"], characterName=a["characterName"], allianceName=a["allianceName"], ) aa.save() pilot.objects.bulk_create(s_pilots) corp.objects.bulk_create(s_corps) print "ac ",ac