大萨达萨达
2026/9/24 8:48:31
# ---------- 主流程 ---------- def main(): ....................... from test_fare_detail import fare_payload_from_item from test_fare_curl import COOKIES_DICT ck = dict(client.cookies) if "acw_tc" not in ck: client.import_cookies([(k, v, ".ceair.com", "/") for k, v in COOKIES_DICT.items() if k not in ck]) print("inject acw_tc:", "acw_tc" in COOKIES_DICT, "| session cookies:", list(dict(client.cookies).keys())) else: print("session already has acw_tc:", ck["acw_tc"][:20]) fp = fare_payload_from_item(items[0]) af = ajax_headers(nav_path, dep_date) af['x-tingyun'] = build_x_tingyun() st = now_ms() rf = client.post(BASE + "/portal/v3/shopping/fareDetail", headers=af, json=fp) fjs = "json" in rf.headers.get("content-type", "") print("fareDetail:", rf.status_code, "blocked=", "Try again later" in rf.text or rf.status_code == 403, "json=", fjs, f"({now_ms() - st}ms)") if fjs: fd = json.loads(rf.text) print("fare resultCode:", fd.get("resultCode")) data = fd.get("data") if isinstance(data, dict): print(json.dumps(data, ensure_ascii=False)[:800]) else: print(rf.text[:150])