import os import sys import time import django local_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) print(local_path) if local_path not in sys.path: sys.path.append(local_path) os.environ.setdefault("DJANGO_SETTINGS_MODULE", "kedong.settings") django.setup() from django.conf import settings from smartfarming.models.device import MongoDevice import json import requests import pymongo from urllib import parse my_client = pymongo.MongoClient(host="8.136.98.49", port=27017, username="root", password="yfkj@6020") my_col = my_client['smartfarming']['sa_device'] scd_device = { "7M0AF95PAJ2AAAE-0", "8L0161FPAJ2A977-0", "8L0161FPAJ03AF9-0", "7M03C85PAJ149B8-0", "8H09715PHA88629-0", "8H09715PHAF7579-0", "8H09715PHA5D4B6-0", "8H09715PHAC462F-0", "8H09715PHA447AB-0", "8H09715PHA77BE9-0", "8H09715PHACE549-0", "8H09715PHA93DEB-0", "8H09715PHA4FBD6-0", "8H09715PHA50D17-0", "8H09715PHA4ABCE-0", "8H09715PHA657EC-0", "8H09715PHAF45B1-0", "8H09715PHA24E37-0", "8H09715PHABDF4F-0", "8H09715PHA5FFD5-0" } def dsj_qxz_conf_info(): user = parse.quote_plus("root") passwd = parse.quote_plus("yfkj@6020") # 账号密码方式连接MongoDB | "mongodb://用户名:密码@公网ip:端口/" myclient = pymongo.MongoClient("mongodb://{0}:{1}@8.136.98.49:57017/".format(user,passwd)) # myclient = pymongo.MongoClient("mongodb://127.0.0.1:12514/") # 指定数据库 db = myclient.smartfarming # 指定集合 collection = db.sa_device for i in scd_device: device_info = collection.find_one({'device_id':i}) device_id = device_info['id'] id = device_info["id"] device, is_created = MongoDevice.objects.get_or_create( device_id = device_info["device_id"], defaults={ "dver_num": device_info["dver_num"], "device_model": device_info["device_model"], "device_type_id": device_info["device_type_id"], "device_name": device_info["device_name"], "owner_uid": device_info["owner_uid"], "user_dealer": device_info["user_dealer"], "province": device_info["province"], "city": device_info["city"], "district": device_info["district"], "device_code": device_info["device_code"], "device_status": device_info["device_status"], "off_time": device_info["off_time"], "ftp_push_addr": device_info["ftp_push_addr"], "serverconf": device_info["serverconf"], "lng": device_info["lng"], "lat": device_info["lat"], "gps": device_info["gps"], "addtime": device_info["addtime"], "uptime": device_info["uptime"], "glass_slide_time": device_info["glass_slide_time"], "cultivate_time": device_info["cultivate_time"], "add_position": device_info["add_position"], "simid": device_info["simid"], "disable": device_info["disable"], "decoy": device_info["decoy"], "sim_dealer": device_info["sim_dealer"], "xy_uptime": device_info["xy_uptime"], "networking": device_info["networking"], "equipment": device_info["equipment"], "sale_uid": device_info["sale_uid"], "salesman_task_number": device_info["salesman_task_number"], "whether_equipment_status": device_info["whether_equipment_status"], "device_expire_time": device_info["device_expire_time"], "device_activation": device_info["device_activation"], "device_expire": device_info["device_expire"], "device_expire_days": device_info["device_expire_days"], "water_pump_switch": device_info["water_pump_switch"], "device_notes": device_info["device_notes"], "water_pump_times": device_info["water_pump_times"], "water_pump_switch_times": device_info["water_pump_switch_times"], "xy_expire_time": device_info["xy_expire_time"], "device_tag": device_info["device_tag"] } ) print(device.id, is_created) return True if __name__ == "__main__": dsj_qxz_conf_info()