import requests
import json
import os
import re
import requests
ROOT = os.path.dirname(__file__)
PLAN_ROOT = os.path.join(ROOT, "plans")
true = True
false = False
null = None
RESULT_DICT = {"Pass":[],"Fail":[]}
class ChenDu():
def __init__(self,host="xkool.aaa:8880",phone_number="18675577211"):
self.url = "http://{}".format(host)
self.post_headers = {"content-type": "application/json", "authorization": "Basic eGtvb2w6eGtvb2xAMDQxNQ=="}
self.get_headers = {"authorization": "Basic eGtvb2w6eGtvb2xAMDQxNQ=="}
self.project_list = []
self.phone_number = phone_number
self.session = requests.Session()
self.login()
def login(self):
url = "https://dev.xkool.org/api/user_center/v2/dynamic_login"
data = {"phone_number": self.phone_number, "dynamic_code": 666666, "login_terminal": 1}
req = self.session.post(url, headers=self.post_headers, json=data)
respoce_json = req.json()
# print(respoce_json)
for team in respoce_json["legal_entities"]:
if team["name"] == "xkool_developer":
# self.headers["xauthorization"] = team["token"]
self.get_headers["xauthorization"] = team["token"]
self.post_headers["xauthorization"] = team["token"]
self.entityId = respoce_json["legal_entities"][0]["id"]
def get_plan(self,plan_id):
url = "{}/v2/plans/{}".format(self.url,plan_id)
# params = {"page": 1, "per_page": -1, "sort_type": 1, "share_type": 3}
print(plan_id)
print(url)
req = self.session.get(url, headers=self.get_headers)
req_json = req.json()
return req_json
if __name__ == "__main__":
# create_project_json()
before = ChenDu(host="xkool.aaa:8880",phone_number="18675577211")
after = ChenDu(host="xkool.bbb:8880",phone_number="14012340008")
with open(r"D:\C盘桌面\python临时脚本\url_list.txt","r") as f:
lines = f.readlines()
for line in lines:
plan_id = re.split(r"[?/]",line.strip())[-2]
before_json = before.get_plan(plan_id)
after_json = after.get_plan(plan_id)
if before_json["data"]["building_data"] == after_json["data"]["building_data"]:
RESULT_DICT["Pass"].append(line.strip())
else:
RESULT_DICT["Fail"].append(line.strip())
print("Pass:{},Fail:{}".format(len(RESULT_DICT["Pass"]),len(RESULT_DICT["Fail"])))
with open("result.json","w") as fw:
json.dump(RESULT_DICT,fw)
迁移方案对比
553 views