Explorar o código

数据获取print修改

lmstack %!s(int64=3) %!d(string=hai) anos
pai
achega
82eb290cf7
Modificáronse 2 ficheiros con 16 adicións e 9 borrados
  1. 2 1
      .gitignore
  2. 14 8
      LIB/BACKEND/DBManager.py

+ 2 - 1
.gitignore

@@ -5,4 +5,5 @@
 /.vscode/
 /*/__pycache__/
 /*/*/__pycache__/
-/*.ipynb
+/*.ipynb
+*.csv

+ 14 - 8
LIB/BACKEND/DBManager.py

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