exportUnion.py 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. def export_fromGDB():
  2. df1 = pd.read_csv("../data/exportFind_tenderee.csv",encoding="GBK")
  3. l_t = []
  4. for name,tenderee in zip(df1["name"],df1["tenderee"]):
  5. if tenderee is not None and tenderee!="":
  6. list_ten = list(set(tenderee[2:-2].split("', '")))
  7. l_t.append(list_ten)
  8. else:
  9. l_t.append([])
  10. df1["tenderer_count"] = l_t
  11. df1.to_csv("../data/exportFind_tenderee2.csv",columns=["name","tenderer_count"])
  12. return
  13. import gremlin_python
  14. df = pd.read_excel("../data/findTenderee.xlsx")
  15. set_win_tenderer = set()
  16. for item in df["µ¥Î»Ãû³Æ"]:
  17. if item is not None and item !="":
  18. set_win_tenderer.add(item)
  19. df1 = pd.read_csv("../data/exportFind_tenderee.csv",encoding="GBK")
  20. task_queue = queue.Queue()
  21. for _name in list(set_win_tenderer-set(df1["name"])):
  22. task_queue.put(_name)
  23. result_queue = queue.Queue()
  24. def _handle(_name,result_queue,pool_gdb):
  25. client = pool_gdb.getConnector()
  26. callback = client.submitAsync("g.V('%s').outE('ZhongBiaoRelation').inV().inE('ZhaoBiaoRelation').outV()"%(_name))
  27. list_tenderee = []
  28. for result in callback.result():
  29. for item in result:
  30. list_tenderee.append(item.id)
  31. result_queue.put({"name":_name,"tenderee":list_tenderee})
  32. pool_gdb.putConnector(client)
  33. pool_gdb = ConnectorPool(init_num=30,max_num=50,method_init=getConnect_gdb)
  34. mt = MultiThreadHandler(task_queue=task_queue,task_handler=_handle,result_queue=result_queue,thread_count=50,pool_gdb=pool_gdb)
  35. mt.run()
  36. df_data = {"name":[],"tenderee":[]}
  37. while(True):
  38. try:
  39. item = result_queue.get(block=True,timeout=1)
  40. for _k in df_data.keys():
  41. if _k in item:
  42. df_data[_k].append(str(item[_k]))
  43. else:
  44. df_data[_k].append("")
  45. except queue.Empty as e:
  46. break
  47. except Exception as e:
  48. traceback.print_exc()
  49. df = pd.DataFrame(df_data)
  50. df.to_csv("../data/exportFind_tenderee1.csv",columns=["name","tenderee"])