|
@@ -2,6 +2,7 @@ import time
|
|
|
from model.DateUtils import DateUtils
|
|
|
from model.ComUtils import md5
|
|
|
import requests
|
|
|
+from model.ComUtils import split_int
|
|
|
from app.api_data.platform_order.order_util import save_order
|
|
|
ut = DateUtils()
|
|
|
|
|
@@ -18,87 +19,101 @@ def get_yuewen_order_task(st, et, account):
|
|
|
end_time = DateUtils.str_to_stamp(ut.get_n_minutes_ago(), "%Y-%m-%d %H:%M:%S")
|
|
|
else:
|
|
|
end_time = DateUtils.str_to_stamp(et) + 86399
|
|
|
- page = 1
|
|
|
- last_min_id = ''
|
|
|
- last_max_id = ''
|
|
|
- total_count = ''
|
|
|
- last_page = ''
|
|
|
|
|
|
- li = []
|
|
|
- while True:
|
|
|
|
|
|
- params = {
|
|
|
- 'email': email,
|
|
|
- 'timestamp': int(time.time()),
|
|
|
- 'start_time': start_time,
|
|
|
- 'end_time': end_time,
|
|
|
- 'page': page,
|
|
|
- 'version':1
|
|
|
- }
|
|
|
+ for i in split_int(start_time,end_time,3600):
|
|
|
+ start = i[0]
|
|
|
+ end = i[1]
|
|
|
+ print(ut.stamp_to_str(end))
|
|
|
|
|
|
- if page > 1:
|
|
|
- params['last_min_id'] = last_min_id
|
|
|
- params['last_max_id'] = last_max_id
|
|
|
- params['total_count'] = total_count
|
|
|
- params['last_page'] = last_page
|
|
|
|
|
|
- sorted_data = sorted(params.items())
|
|
|
- str_params = ''
|
|
|
- for k, v in sorted_data:
|
|
|
- str_params = str_params + str(k) + str(v)
|
|
|
+ page = 1
|
|
|
+ last_min_id = ''
|
|
|
+ last_max_id = ''
|
|
|
+ total_count = ''
|
|
|
+ last_page = ''
|
|
|
|
|
|
- sign = md5(appsecert + str_params).upper()
|
|
|
|
|
|
- # 放入签名
|
|
|
- params['sign'] = sign
|
|
|
- # print(params)
|
|
|
- response_result_json = requests.get(url=url, params=params).json()
|
|
|
- # print(response_result_json)
|
|
|
|
|
|
- # print(len(response_result_json["data"]["list"]))
|
|
|
+ li = []
|
|
|
+ while True:
|
|
|
|
|
|
+ params = {
|
|
|
+ 'email': email,
|
|
|
+ 'timestamp': int(time.time()),
|
|
|
+ 'start_time': start,
|
|
|
+ 'end_time': end,
|
|
|
+ 'page': page,
|
|
|
+ 'version':1
|
|
|
+ }
|
|
|
|
|
|
+ if page > 1:
|
|
|
+ params['last_min_id'] = last_min_id
|
|
|
+ params['last_max_id'] = last_max_id
|
|
|
+ params['total_count'] = total_count
|
|
|
+ params['last_page'] = last_page
|
|
|
|
|
|
- response_data = response_result_json['data']
|
|
|
- total_count = response_data['total_count']
|
|
|
+ sorted_data = sorted(params.items())
|
|
|
+ str_params = ''
|
|
|
+ for k, v in sorted_data:
|
|
|
+ str_params = str_params + str(k) + str(v)
|
|
|
|
|
|
+ sign = md5(appsecert + str_params).upper()
|
|
|
|
|
|
- last_min_id = response_data['min_id']
|
|
|
- last_max_id = response_data['max_id']
|
|
|
- last_page = response_data['page']
|
|
|
- order_item_list = response_data['list']
|
|
|
+ # 放入签名
|
|
|
+ params['sign'] = sign
|
|
|
+ # print(params)
|
|
|
|
|
|
- if len(order_item_list) == 0:
|
|
|
- break
|
|
|
+ response_result_json = requests.get(url=url, params=params).json()
|
|
|
+ # print(response_result_json)
|
|
|
|
|
|
- for i in order_item_list:
|
|
|
- order_time = i["order_time"]
|
|
|
- li.append((order_time[:10],
|
|
|
- '',
|
|
|
- '阅文',
|
|
|
- i['app_name'],
|
|
|
- i['channel_id'],
|
|
|
- i['openid'],
|
|
|
- i['order_time'],
|
|
|
- i['reg_time'],
|
|
|
- i['amount'],
|
|
|
- i['book_name'],
|
|
|
- i['order_id'],
|
|
|
- i['order_status']
|
|
|
+ # print(len(response_result_json["data"]["list"]))
|
|
|
|
|
|
- ))
|
|
|
+ if not response_result_json.get('data'):
|
|
|
+ print(response_result_json)
|
|
|
+ raise
|
|
|
|
|
|
- if len(order_item_list) < 100:
|
|
|
- break
|
|
|
- else:
|
|
|
- page += 1
|
|
|
+ response_data = response_result_json['data']
|
|
|
+ total_count = response_data['total_count']
|
|
|
|
|
|
- if len(li) > 0:
|
|
|
- print(f"{email} 有订单{len(li)}")
|
|
|
- save_order(li)
|
|
|
+
|
|
|
+ last_min_id = response_data['min_id']
|
|
|
+ last_max_id = response_data['max_id']
|
|
|
+ last_page = response_data['page']
|
|
|
+ order_item_list = response_data['list']
|
|
|
+
|
|
|
+ if len(order_item_list) == 0:
|
|
|
+ break
|
|
|
+
|
|
|
+ for i in order_item_list:
|
|
|
+ order_time = i["order_time"]
|
|
|
+ li.append((order_time[:10],
|
|
|
+ '',
|
|
|
+ '阅文',
|
|
|
+ i['app_name'],
|
|
|
+ i['channel_id'],
|
|
|
+ i['openid'],
|
|
|
+ i['order_time'],
|
|
|
+ i['reg_time'],
|
|
|
+ i['amount'],
|
|
|
+ i['book_name'],
|
|
|
+ i['order_id'],
|
|
|
+ i['order_status']
|
|
|
+
|
|
|
+ ))
|
|
|
+
|
|
|
+ if len(order_item_list) < 100:
|
|
|
+ break
|
|
|
+ else:
|
|
|
+ page += 1
|
|
|
+
|
|
|
+ if len(li) > 0:
|
|
|
+ print(f"{email} 有订单{len(li)}")
|
|
|
+ save_order(li)
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
- a = "mqud82950@163.com,74ca754515fa253c8ab790603cebc2ee"
|
|
|
- get_yuewen_order_task('2021-05-14', '2021-05-14', a.split(','))
|
|
|
+ a = "guangzhouliuqi2@sina.com,10ce1dd6ccb330a82b73701d1e78f518"
|
|
|
+ b = "mqud82950@163.com,74ca754515fa253c8ab790603cebc2ee"
|
|
|
+ get_yuewen_order_task('2021-05-28', '2021-05-28', a.split(','))
|