cbd_photo.py 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. import os
  2. import sys
  3. import time
  4. import django
  5. local_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
  6. print(local_path)
  7. if local_path not in sys.path:
  8. sys.path.append(local_path)
  9. os.environ.setdefault("DJANGO_SETTINGS_MODULE", "kedong.settings")
  10. django.setup()
  11. from django.conf import settings
  12. from smartfarming.models.device import MongoDevice, MongoCBDData
  13. from smartfarming.models.worm_forecast import MongoBZYphoto, MongoCBDphoto
  14. import json
  15. import requests
  16. import pymongo
  17. from urllib import parse
  18. my_client = pymongo.MongoClient(host="8.136.98.49", port=27017, username="root", password="yfkj@6020")
  19. my_col = my_client['smartfarming']['sa_device']
  20. scd_device = {
  21. "866547058627400",
  22. "866547058637276",
  23. "866547058633663",
  24. "866547058613921"
  25. }
  26. def dsj_qxz_conf_info():
  27. user = parse.quote_plus("root")
  28. passwd = parse.quote_plus("yfkj@6020")
  29. # 账号密码方式连接MongoDB | "mongodb://用户名:密码@公网ip:端口/"
  30. myclient = pymongo.MongoClient("mongodb://{0}:{1}@8.136.98.49:57017/".format(user,passwd))
  31. # myclient = pymongo.MongoClient("mongodb://127.0.0.1:12514/")
  32. # 指定数据库
  33. db = myclient.smartfarming
  34. # 指定集合
  35. collection = db.sa_device
  36. collection1 = db.sa_device_cbdphoto
  37. for i in scd_device:
  38. device_info = collection.find_one({'device_id':i})
  39. device_id = device_info['id']
  40. id = device_info["id"]
  41. print(device_id, "================")
  42. data = {'device_id': str(device_id),'uptime':{'$gte':1689006195}}
  43. cursor = collection1.find(data,{'_id':0,'id':0})
  44. device_id = MongoDevice.objects.get(device_id=i).id
  45. for i in cursor:
  46. if i["addr"] == i["indentify_photo"]:
  47. scd_data = MongoCBDphoto.objects.create(
  48. device_id = device_id,
  49. addtime = i["addtime"],
  50. uptime = i["uptime"],
  51. addr = i["addr"],
  52. at = i["at"],
  53. ah = i["ah"],
  54. describe = i["describe"],
  55. indentify_photo = i["indentify_photo"],
  56. indentify_result = i["indentify_result"],
  57. photo_status = i["photo_status"],
  58. is_mark = i["is_mark"],
  59. mark = i["mark"],
  60. label = i["label"]
  61. )
  62. print(scd_data)
  63. print(f"设备: {i} {device_id} 数据量 {cursor.count()}")
  64. return True
  65. if __name__ == "__main__":
  66. dsj_qxz_conf_info()