迁移方案对比


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)