|  | @@ -201,8 +201,6 @@ def save_hs_data(data):
 | 
	
		
			
				|  |  |      db.quchen_text.executeMany(sql,data)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  def get_qiyue_order_task(start, end, account):
 | 
	
		
			
				|  |  |      """一分钟请求60次的限制"""
 | 
	
		
			
				|  |  |      order_list = []
 | 
	
	
		
			
				|  | @@ -264,6 +262,7 @@ def get_qiyue_order_task(start, end, account):
 | 
	
		
			
				|  |  |          save_order(order_list)
 | 
	
		
			
				|  |  |      return order_list
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  def save_order(order_list):
 | 
	
		
			
				|  |  |      db.quchen_text.executeMany('replace into `order` values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)',order_list)
 | 
	
		
			
				|  |  |      print("入库成功")
 | 
	
	
		
			
				|  | @@ -351,6 +350,7 @@ def get_wending_json_object(url,params):
 | 
	
		
			
				|  |  |      del params['sign']
 | 
	
		
			
				|  |  |      return response_result_json
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  def get_wd_order_task(start,end,account):
 | 
	
		
			
				|  |  |      order_list = []
 | 
	
		
			
				|  |  |      url = 'https://bi.reading.163.com/dist-api/rechargeList'
 | 
	
	
		
			
				|  | @@ -412,6 +412,71 @@ def get_wd_order_task(start,end,account):
 | 
	
		
			
				|  |  |          save_order(order_list)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +def get_zd_order_task(start,end,account):
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    """开始到结束最多90天"""
 | 
	
		
			
				|  |  | +    order_list = []
 | 
	
		
			
				|  |  | +    url = 'https://api.zhangdu520.com/channel/getorder'
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    uid = account[0]
 | 
	
		
			
				|  |  | +    appsecert = account[1]
 | 
	
		
			
				|  |  | +    channel = account[2]
 | 
	
		
			
				|  |  | +    stage = account[3]
 | 
	
		
			
				|  |  | +    timestamp = int(time.time())
 | 
	
		
			
				|  |  | +    sign = md5(str(uid) + '&' + appsecert + '&' + str(timestamp))
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    for i in du.split_date2(start, end, 90):
 | 
	
		
			
				|  |  | +        starttime = DateUtils.str_to_stamp(i[0]+' 00:00:00','%Y-%m-%d %H:%M:%S')
 | 
	
		
			
				|  |  | +        endtime = DateUtils.str_to_stamp(i[1]+' 23:59:59','%Y-%m-%d %H:%M:%S')
 | 
	
		
			
				|  |  | +        page = 1
 | 
	
		
			
				|  |  | +        while True:
 | 
	
		
			
				|  |  | +            params = {
 | 
	
		
			
				|  |  | +                'uid': uid,
 | 
	
		
			
				|  |  | +                'timestamp': timestamp,
 | 
	
		
			
				|  |  | +                'sign': sign,
 | 
	
		
			
				|  |  | +                'starttime': starttime,
 | 
	
		
			
				|  |  | +                'endtime': endtime,
 | 
	
		
			
				|  |  | +                'page': page
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            response_result_json = requests.get(url=url, params=params).json()
 | 
	
		
			
				|  |  | +            if 'data' not in response_result_json.keys():
 | 
	
		
			
				|  |  | +                print(f'掌读账号【{uid}】, 查询时间【{i[0]} - {i[1]}】,本次请求数据异常,响应报文【{response_result_json}】')
 | 
	
		
			
				|  |  | +                break
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            result_data = response_result_json['data']
 | 
	
		
			
				|  |  | +            page_count = result_data['pageCount']
 | 
	
		
			
				|  |  | +            if page_count == 0:
 | 
	
		
			
				|  |  | +                break
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            order_item_list = result_data['list']
 | 
	
		
			
				|  |  | +            for order_item in order_item_list:
 | 
	
		
			
				|  |  | +                if order_item['status'] != '1':  # 1为已支付
 | 
	
		
			
				|  |  | +                    continue
 | 
	
		
			
				|  |  | +                order_time = order_item['ctime']
 | 
	
		
			
				|  |  | +                order = (
 | 
	
		
			
				|  |  | +                    str(DateUtils.stamp_to_date_stamp(int(order_time))),
 | 
	
		
			
				|  |  | +                    stage,
 | 
	
		
			
				|  |  | +                    '掌读',
 | 
	
		
			
				|  |  | +                    channel,
 | 
	
		
			
				|  |  | +                    uid,
 | 
	
		
			
				|  |  | +                    order_item['openid'],
 | 
	
		
			
				|  |  | +                    order_time,
 | 
	
		
			
				|  |  | +                    order_item['regtime'],
 | 
	
		
			
				|  |  | +                    order_item['amount'],
 | 
	
		
			
				|  |  | +                    order_item.get('book_entry', ''),
 | 
	
		
			
				|  |  | +                    str(order_item['orderno'])
 | 
	
		
			
				|  |  | +                )
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                order_list.append(order)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            if page == page_count:  # 是最后一页
 | 
	
		
			
				|  |  | +                break
 | 
	
		
			
				|  |  | +            page = page + 1
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    print(f"{channel} [{start}]~[{end}] 有订单 {order_list.__len__()}")
 | 
	
		
			
				|  |  | +    if len(order_list) > 0:
 | 
	
		
			
				|  |  | +        save_order(order_list)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  if __name__ == '__main__':
 | 
	
		
			
				|  |  |      get_qiyue_order_task('2021-02-01','2021-02-19',['趣程15期','eyJpdiI6ImluVWxoRUl3VTR6QU5hamlYOFBvXC9BPT0iLCJ2YWx1ZSI6Ik5IZ0N4dm5GcmJ0Zklsd0tNZ1JVSVE9PSIsIm1hYyI6IjJjODUzMjdlZTc2ODI2ZjFmY2QyYmU5MGViYTkzOGU4MDEwZTIyODIxOTE4NzgzYTNhOGQ1YWM4OGJkMDAzMmIifQ=='])
 |