Commit 2a71e5a0 by sikang

自动生成协议

parent ecd14d42
# -*-coding:utf-8-*-
import requests
import io
import json
import string
class Api:
host = "https://biz.apollo.starblingbling.com"
mobile = "18512342222"
pwd = "android"
token = ""
# def loadConfig(self):
# with io.open('config.json', "r+") as fin:
# return json.load(fin)
# def updateConfig(self,config):
# with io.open("config.json", "w+") as fout:
# fout.write(json.dumps(config, ensure_ascii=False))
def getToken(self):
return self.token
# with io.open('config.json', "r+") as fin:
# return json.load(fin)['token']
# 登录
def login(self,account, pwd):
url = self.host+"/api/api/login"
params = {'mobile': account, 'password': pwd}
result = requests.post(url, params)
if result.status_code == 200:
self.token = result.json()['data']['token']
# config = self.loadConfig()
# config['token'] = token
# self.updateConfig(config)
# print("token已更新")
else:
print(result.json())
def handleResult(self,result):
if result.json()['code'] != "OK":
print("api error: ",result.url)
print(result.json())
if "token invalid" in result.json()['message']:
print("token失效,正在重新登录,稍后再试...")
self.login(self.mobile,self.pwd)
else:
return True
return False
# 生成新的协议
def new_privacy(self,crop_id, app_name, oss_path):
self.login(self.mobile,self.pwd)
url = self.host+"/api/api/privacies"
params = {'corpId': crop_id, 'corpName': app_name, 'packageName': oss_path }
header = {'X-AUTH-TOKEN':self.getToken()}
result = requests.post(url, json=params,headers=header)
if("corpId" in result.text and "packageName" in result.text and "exists" in result.text):
print("文件已存在,正在转到更新接口...")
success = self.update_privacy(crop_id,app_name,oss_path)
if not success and result.json()['code'] != "OK":
return False
if self.upload_privacy(crop_id,oss_path):
print("更新协议成功!")
return True
return False
#更新协议
def update_privacy(self,crop_id, app_name, oss_path):
url = self.host+"/api/api/privacies/regenerate/%s/%s"%(crop_id,oss_path)
params = {'corpId': crop_id, 'corpName': app_name, 'packageName': oss_path}
header = {'X-AUTH-TOKEN':self.getToken()}
result = requests.put(url, json=params,headers=header)
return self.handleResult(result)
#上传协议
def upload_privacy(self,crop_id, oss_path):
url = self.host+"/api/api/privacies/upload-to-oss/%s/%s"%(crop_id,oss_path)
params = {'corpId': crop_id, 'packageName': oss_path}
header = {'X-AUTH-TOKEN':self.getToken()}
result = requests.put(url,json=params,headers=header)
return self.handleResult(result)
# -*-coding:utf-8-*-
from api import Api
import sys
import requests
import io
import os
import json
crop_id = sys.argv[1]
app_name = sys.argv[2]
privacy_url = sys.argv[3]
update_local = sys.argv[4]
error_url = privacy_url.replace("privacy.html","privacy_error.html")
oss_path=requests.get(error_url).text\
.split("<Key>")[1]\
.split("</Key>")[0]\
.split("/")[1]
print("crop_id: %s, app_name: %s, osspath: %s"%(crop_id,app_name,oss_path))
api = Api()
success = api.new_privacy(str(crop_id), app_name, oss_path)
#是否更新本地文件
path = "../../../app/src/main/assets/web/".replace("/",os.path.sep)
if not os.path.exists(path):
os.makedirs(path)
if success and update_local == "true":
content = requests.get(privacy_url).text
with io.open(path+"privacy.html", "w+", encoding="ISO-8859-1") as fout:
fout.write(content)
print("本地协议已更新!")
...@@ -28,6 +28,7 @@ echo "23、字符串加密" ...@@ -28,6 +28,7 @@ echo "23、字符串加密"
echo "24、添加toolbox库" echo "24、添加toolbox库"
echo "25、马甲包切换" echo "25、马甲包切换"
echo "26、打印checklist" echo "26、打印checklist"
echo "27、更换隐私协议"
echo " " echo " "
if [[ "$app_name" == "$majia_name" ]];then if [[ "$app_name" == "$majia_name" ]];then
...@@ -280,6 +281,10 @@ elif (($commod == '26'));then ...@@ -280,6 +281,10 @@ elif (($commod == '26'));then
file_name="${corp_id}_${app_name}" file_name="${corp_id}_${app_name}"
mv /Users/connor/Documents/apks/"${file_name}.apk" /Users/connor/Documents/apks/"${file_name}/app.apk" mv /Users/connor/Documents/apks/"${file_name}.apk" /Users/connor/Documents/apks/"${file_name}/app.apk"
elif (($commod == '27'));then
cd privacy
python update_privacy.py "${corp_id}" "${app_name}" "${agreement_url}" "true"
elif (($commod == '10000')) elif (($commod == '10000'))
then then
cd .. cd ..
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment