-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathupToFir.py
58 lines (52 loc) · 1.68 KB
/
upToFir.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# coding=utf-8
# encoding = utf-8
import requests
import sys
def upToFir():
# 打印传递过来的参数数组长度,便于校验
print(len(sys.argv))
upUrl = sys.argv[1]
appName = sys.argv[2]
bundleId = sys.argv[3]
verName = sys.argv[4]
apiToken = sys.argv[5]
print (apiToken)
iconPath = sys.argv[6]
apkPath = sys.argv[7]
buildNumber = sys.argv[8]
changeLog = sys.argv[9]
queryData = {'type': 'android', 'bundle_id': bundleId, 'api_token': apiToken}
iconDict = {}
binaryDict = {}
# 获取上传信息
try:
response = requests.post(url=upUrl, data=queryData)
json = response.json()
iconDict = (json["cert"]["icon"])
binaryDict = (json["cert"]["binary"])
except Exception as e:
print('query:' + e)
# 上传apk
try:
file = {'file': open(apkPath, 'rb')}
param = {"key": binaryDict['key'],
'token': binaryDict['token'],
"x:name": appName,
"x:version": verName,
"x:build": buildNumber,
"x:changelog": changeLog.encode("utf-8")}
req = requests.post(url=binaryDict['upload_url'], files=file, data=param, verify=False)
print(req.status_code)
except Exception as e:
print('error_apk:' + e)
# 上传logo
try:
file = {'file': open(iconPath, 'rb')}
param = {"key": iconDict['key'],
'token': iconDict['token']}
req = requests.post(url=iconDict['upload_url'], files=file, data=param, verify=False)
print(req.status_code)
except Exception as e:
print('error_icon:' + e)
if __name__ == '__main__':
upToFir()