阿里菜鸟物流云API调用
后台-系统设置-扩展变量-手机广告位-内容正文顶部 |
1 # coding:utf-8
2 # by NeilShi 11/29/2017
3 import requests
4 import hashlib
5 import base64
6 import json
7 import os
8
9
10 # 'appkey': '154430',
11 # 'AppSecret': 'S7ib51Kp5......Qd10Lt4490QTwpr',
12 # 资源:d0119848ab5......df5d8d6dc149
13
14 url='http://link.cainiao.com/gateway/link.do'
15 keys='S7ib51Kp5O......d10Lt4490QTwpr'
16
17 headers= {
18 'content-type': 'application/x-www-form-urlencoded; charset=UTF-8'
19 }
20
21 results='' # 存放结果集
22
23
24 def get_address():
25 try:
26 with open(os.getcwd() + r'\address.txt', 'r') as f:
27 address= f.readlines()
28 return address
29 except:
30 print('打开文件失败')
31 return ''
32
33
34 def get_raw_input(address):
35 raw_input= {
36 "address": address,
37 "limit": "20"
38 }
39 return raw_input
40
41
42 def get_param(sign, content):
43 param= {
44 'msg_type': 'CNDZK_ADDRESS_QUERY',
45 'data_digest': sign,
46 'logistic_provider_id': 'd011984......d7ae1df5d8d6dc149',
47 'logistics_interface': content
48 }
49 return param
50
51
52 def get_data_digest(inputs, keys):
53 m1= hashlib.md5()
54 m1.update((inputs + keys).encode('utf-8'))
55
56 # base64.b64encode(m1.hexdigest()) 得到错误值!!!原因未知
57 return base64.b64encode(m1.digest())
58
59
60 address_list= get_address()
61
62 for x in address_list:
63 # unicode形态转中文,去掉空格(否则查不出)
64 inputs=json.dumps(get_raw_input(x)).encode('utf-8').decode('unicode_escape').replace(' ', '')
65
66 result=requests.post(url, data=get_param(get_data_digest(inputs, keys), inputs), headers=headers)
67 result=result.content.decode(encoding='utf-8')
68 # print(result)
69 results=results + result + '\r\n'
70
71
72 try:
73 with open(os.getcwd()+r'\result.txt', 'w') as f:
74 f.write(results)
75 print("写入成功")
76 except:
77 print("写文件失败")
-滁州物流公司
后台-系统设置-扩展变量-手机广告位-内容正文底部 |
标签:
已有条评论,欢迎点评!