yumi_taozhu.py 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. import pymongo
  2. from urllib import parse
  3. import re
  4. from openpyxl import load_workbook
  5. import datetime
  6. # 打开Excel文件
  7. workbook = load_workbook('tools\example.xlsx')
  8. # 获取工作表
  9. sheet = workbook['Sheet1']
  10. user = parse.quote_plus("root")
  11. passwd = parse.quote_plus("yfkj@6020")
  12. host = parse.quote_plus("8.136.98.49")
  13. port = "57017"
  14. myclient = pymongo.MongoClient("mongodb://{0}:{1}@{2}:{3}/".format(user,passwd, host, port))
  15. db = myclient.smartfarming
  16. cbd_photo = db.sa_device_cbdphoto
  17. device = db.sa_device
  18. start = 1640966400
  19. end = 1672502399
  20. photo = cbd_photo.find({"addtime": {"$gte": start, "$lte": end}}).sort("device_id", 1)
  21. for i in list(photo):
  22. indentify_result = i.get("indentify_result")
  23. sp = indentify_result.split("#")
  24. chong = {}
  25. for s in sp:
  26. csp = s.split(",")
  27. chong[csp[0]] = csp[1]
  28. last_row = sheet.max_row
  29. device_info = device.find_one({"id": i.get("id")})
  30. if "79" in chong.keys():
  31. sheet.insert_rows(last_row + 1)
  32. pest_num = chong["79"]
  33. province = device_info.get("province")
  34. city = device_info.get("city")
  35. district = device_info.get("district")
  36. lng = device_info.get("lng")
  37. lat = device_info.get("lat")
  38. at = i.get("at")
  39. ah = i.get("ah")
  40. addtime = i.get("addtime")
  41. date = datetime.datetime.fromtimestamp(addtime)
  42. datestr = date.strftime("%Y%m%d%H:%M:%S")
  43. sheet.cell(row=last_row + 1, column=1).value = device_info.get("device_id")
  44. sheet.cell(row=last_row + 1, column=2).value = "玉米螟"
  45. sheet.cell(row=last_row + 1, column=3).value = chong["79"]
  46. sheet.cell(row=last_row + 1, column=3).value = date
  47. sheet.cell(row=last_row + 1, column=3).value = date.year
  48. sheet.cell(row=last_row + 1, column=3).value = date.month
  49. sheet.cell(row=last_row + 1, column=3).value = date.day
  50. sheet.cell(row=last_row + 1, column=3).value = date.hour
  51. sheet.cell(row=last_row + 1, column=3).value = date.minute
  52. sheet.cell(row=last_row + 1, column=3).value = date.second
  53. sheet.cell(row=last_row + 1, column=3).value = province + city + district
  54. sheet.cell(row=last_row + 1, column=3).value = province
  55. sheet.cell(row=last_row + 1, column=3).value = city
  56. sheet.cell(row=last_row + 1, column=3).value = district
  57. sheet.cell(row=last_row + 1, column=3).value = at
  58. sheet.cell(row=last_row + 1, column=3).value = ah
  59. sheet.cell(row=last_row + 1, column=3).value = lng
  60. sheet.cell(row=last_row + 1, column=3).value = lat
  61. if "52" in chong.keys():
  62. sheet.insert_rows(last_row + 1)
  63. pest_num = chong["52"]
  64. province = device_info.get("province")
  65. city = device_info.get("city")
  66. district = device_info.get("district")
  67. lng = device_info.get("lng")
  68. lat = device_info.get("lat")
  69. at = i.get("at")
  70. ah = i.get("ah")
  71. addtime = i.get("addtime")
  72. date = datetime.datetime.fromtimestamp(addtime)
  73. datestr = date.strftime("%Y%m%d%H:%M:%S")
  74. sheet.cell(row=last_row + 1, column=1).value = device_info.get("device_id")
  75. sheet.cell(row=last_row + 1, column=2).value = "桃蛀螟"
  76. sheet.cell(row=last_row + 1, column=3).value = chong["52"]
  77. sheet.cell(row=last_row + 1, column=3).value = date
  78. sheet.cell(row=last_row + 1, column=3).value = date.year
  79. sheet.cell(row=last_row + 1, column=3).value = date.month
  80. sheet.cell(row=last_row + 1, column=3).value = date.day
  81. sheet.cell(row=last_row + 1, column=3).value = date.hour
  82. sheet.cell(row=last_row + 1, column=3).value = date.minute
  83. sheet.cell(row=last_row + 1, column=3).value = date.second
  84. sheet.cell(row=last_row + 1, column=3).value = province + city + district
  85. sheet.cell(row=last_row + 1, column=3).value = province
  86. sheet.cell(row=last_row + 1, column=3).value = city
  87. sheet.cell(row=last_row + 1, column=3).value = district
  88. sheet.cell(row=last_row + 1, column=3).value = at
  89. sheet.cell(row=last_row + 1, column=3).value = ah
  90. sheet.cell(row=last_row + 1, column=3).value = lng
  91. sheet.cell(row=last_row + 1, column=3).value = lat