|
@@ -5,6 +5,7 @@
|
|
'''
|
|
'''
|
|
__author__ = 'wlm'
|
|
__author__ = 'wlm'
|
|
|
|
|
|
|
|
+from re import S
|
|
import time
|
|
import time
|
|
import datetime
|
|
import datetime
|
|
import os
|
|
import os
|
|
@@ -15,6 +16,8 @@ import numpy as np
|
|
import json
|
|
import json
|
|
import requests
|
|
import requests
|
|
import pdb
|
|
import pdb
|
|
|
|
+
|
|
|
|
+
|
|
# import http.client
|
|
# import http.client
|
|
# http.client.HTTPConnection._http_vsn = 10
|
|
# http.client.HTTPConnection._http_vsn = 10
|
|
# http.client.HTTPConnection._http_vsn_str = 'HTTP/1.1'
|
|
# http.client.HTTPConnection._http_vsn_str = 'HTTP/1.1'
|
|
@@ -68,16 +71,18 @@ class DBManager():
|
|
'''
|
|
'''
|
|
|
|
|
|
i = 0
|
|
i = 0
|
|
- while i<5:
|
|
|
|
|
|
+ while 1:
|
|
try:
|
|
try:
|
|
- r = requests.get(url,stream=True, timeout=50)
|
|
|
|
|
|
+ r = requests.get(url, stream=True, timeout=100, headers={'Connection':'close'})
|
|
break
|
|
break
|
|
- except requests.exceptions.RequestException:
|
|
|
|
- print('Server Error')
|
|
|
|
|
|
+ except requests.exceptions.RequestException as e:
|
|
|
|
+ if (i == 0):
|
|
|
|
+ print()
|
|
|
|
+ print('\r' + 'Server Error, retry {}......'.format(str(i)), end=" ")
|
|
time.sleep(5)
|
|
time.sleep(5)
|
|
i+=1
|
|
i+=1
|
|
# print(r.content)
|
|
# print(r.content)
|
|
- # pdb.set_trace()
|
|
|
|
|
|
+ # pdb.set_trace()
|
|
for line in r.iter_lines():
|
|
for line in r.iter_lines():
|
|
if line:
|
|
if line:
|
|
yield json.loads(line)
|
|
yield json.loads(line)
|
|
@@ -160,7 +165,7 @@ class DBManager():
|
|
except:
|
|
except:
|
|
continue
|
|
continue
|
|
data_blocks = np.concatenate((data_blocks,data_block),axis=0)
|
|
data_blocks = np.concatenate((data_blocks,data_block),axis=0)
|
|
- print('\r'+str(i),end=" ")
|
|
|
|
|
|
+ # print('\r'+str(i),end=" ")
|
|
# print(data_block)
|
|
# print(data_block)
|
|
# print(urls)
|
|
# print(urls)
|
|
# print(time.time()-et)
|
|
# print(time.time()-et)
|
|
@@ -203,9 +208,9 @@ class DBManager():
|
|
bms_all_data = pd.DataFrame()
|
|
bms_all_data = pd.DataFrame()
|
|
gps_all_data = pd.DataFrame()
|
|
gps_all_data = pd.DataFrame()
|
|
maxnum = (datetime.datetime.strptime(end_time, "%Y-%m-%d %H:%M:%S") - datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")).days +1
|
|
maxnum = (datetime.datetime.strptime(end_time, "%Y-%m-%d %H:%M:%S") - datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")).days +1
|
|
- print("get data {} from {} to {}".format(sn, start_time, end_time))
|
|
|
|
|
|
+ print("### start to get data {} from {} to {}".format(sn, start_time, end_time))
|
|
# 为避免chunkEncodingError错误,数据每天获取一次,然后将每天的数据合并,得到最终的数据
|
|
# 为避免chunkEncodingError错误,数据每天获取一次,然后将每天的数据合并,得到最终的数据
|
|
- for j in range(maxnum):
|
|
|
|
|
|
+ for j in range(int(maxnum)):
|
|
timefrom = datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")+ datetime.timedelta(days=j)
|
|
timefrom = datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")+ datetime.timedelta(days=j)
|
|
timeto = datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")+ datetime.timedelta(days=j+1)
|
|
timeto = datetime.datetime.strptime(start_time, "%Y-%m-%d %H:%M:%S")+ datetime.timedelta(days=j+1)
|
|
#滴滴的数据sub=0
|
|
#滴滴的数据sub=0
|
|
@@ -218,6 +223,7 @@ class DBManager():
|
|
#print('{}_{}_----getting data----'.format(sn, timefrom))
|
|
#print('{}_{}_----getting data----'.format(sn, timefrom))
|
|
while True:
|
|
while True:
|
|
try:
|
|
try:
|
|
|
|
+ print('\r' + "# get data from {} to {}.........".format(str(timefrom), str(timeto)), end=" ")
|
|
bms_data = DBManager._get_data(File_url_bms,'BMS',mode)
|
|
bms_data = DBManager._get_data(File_url_bms,'BMS',mode)
|
|
if gps_switch:
|
|
if gps_switch:
|
|
gps_data = DBManager._get_data(File_url_gps,'GPS', mode)
|
|
gps_data = DBManager._get_data(File_url_gps,'GPS', mode)
|