|
@@ -84,7 +84,7 @@ class DBManager():
|
|
|
i = 0
|
|
|
while 1:
|
|
|
try:
|
|
|
- r = requests.get(url, stream=True, timeout=100, headers={'Connection':'close'})
|
|
|
+ r = requests.get(url, stream=True, timeout=5, headers={'Connection':'keep-alive'})
|
|
|
break
|
|
|
except requests.exceptions.RequestException as e:
|
|
|
if (i == 0):
|
|
@@ -93,10 +93,14 @@ class DBManager():
|
|
|
time.sleep(5)
|
|
|
i+=1
|
|
|
# print(r.content)
|
|
|
- # pdb.set_trace()
|
|
|
+ # pdb.set_trace()
|
|
|
+ data = []
|
|
|
for line in r.iter_lines():
|
|
|
+
|
|
|
if line:
|
|
|
- yield json.loads(line)
|
|
|
+ data.append(json.loads(line))
|
|
|
+ # yield json.loads(line)
|
|
|
+ return data
|
|
|
|
|
|
@staticmethod
|
|
|
def _convert_to_dataframe_bms(data, mode=0):
|
|
@@ -197,6 +201,7 @@ class DBManager():
|
|
|
|
|
|
@staticmethod
|
|
|
def _get_data(urls,type_name,mode=0):
|
|
|
+ data = DBManager._download_json_data(urls)
|
|
|
if type_name == 'bms':
|
|
|
if mode == 0:
|
|
|
name_const = ['时间戳','GSM信号','故障等级','故障代码','总电流[A]','总电压[V]', '外电压', '总输出状态', '上锁状态', '充电状态','加热状态',
|
|
@@ -208,7 +213,8 @@ class DBManager():
|
|
|
CellTNum = 0
|
|
|
OtherTNumm = 0
|
|
|
st = time.time()
|
|
|
- for line in DBManager._download_json_data(urls):
|
|
|
+
|
|
|
+ for line in data:
|
|
|
et = time.time()
|
|
|
try:
|
|
|
if i==0:
|
|
@@ -250,7 +256,7 @@ class DBManager():
|
|
|
elif mode == 1:
|
|
|
df_all = pd.DataFrame(columns=['时间戳','定位类型', '纬度','经度','速度[km/h]','有效位'])
|
|
|
|
|
|
- for line in DBManager._download_json_data(urls):
|
|
|
+ for line in data:
|
|
|
df_add = DBManager._convert_to_dataframe_gps(line, mode)
|
|
|
df_all = df_all.append(df_add,ignore_index=True)
|
|
|
if not df_all.empty:
|
|
@@ -261,7 +267,7 @@ class DBManager():
|
|
|
df_all = pd.DataFrame(columns=['时间戳','加热目标温度', '加热超时','租赁开始时间','租赁天数','bms上传周期','gps上传周期'])
|
|
|
elif mode == 1:
|
|
|
df_all = pd.DataFrame()
|
|
|
- for line in DBManager._download_json_data(urls):
|
|
|
+ for line in data:
|
|
|
df_add = DBManager._convert_to_dataframe_system(line, mode)
|
|
|
df_all = df_all.append(df_add,ignore_index=True)
|
|
|
if not df_all.empty:
|
|
@@ -274,7 +280,7 @@ class DBManager():
|
|
|
'累计高温充电电量', '累计高温充电能量'])
|
|
|
elif mode == 1:
|
|
|
df_all = pd.DataFrame(columns=['时间戳','累计充电电量','累计充电能量','累计放电电量','累计放电能量', '累积里程'])
|
|
|
- for line in DBManager._download_json_data(urls):
|
|
|
+ for line in data:
|
|
|
df_add = DBManager._convert_to_dataframe_accum(line, mode)
|
|
|
df_all = df_all.append(df_add,ignore_index=True)
|
|
|
if not df_all.empty:
|