Files
kami_jd_ck/jd_bind_card/app.py
2025-04-13 18:52:19 +08:00

58 lines
1.7 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import json
from flask import Flask, request, jsonify
from flask_cors import CORS
from concurrent.futures import ThreadPoolExecutor, as_completed
from logger import get_logger
from spider import JdSpider, func
app = Flask(__name__)
# 跨域
CORS(app)
# 日志
logger = get_logger()
@app.route('/jd/card/bind', methods=['GET', 'POST'], strict_slashes=False)
def bind_card():
if request.method == 'GET':
return 'jd_card'
elif request.method == 'POST':
# 接收参数
data = json.loads(request.get_data())
card_pwd = data.get("card_pwd")
order_num = data.get("order_num")
cookies = data.get("cookies")
# 打印参数日志
logger.info(f"订单ID{order_num}cookies{cookies}")
logger.info(f"订单ID{order_num}card_pwd{card_pwd}")
res = JdSpider(
card_pwd=card_pwd,
order_num=order_num,
cookies=cookies
).run()
logger.info(f"订单ID{order_num},最终返回日志:{res}")
# 打印响应日志
return jsonify(res)
@app.route("/jd/money/check", methods=["GET", "POST"])
def money_check():
if request.method == "GET":
return "okk"
elif request.method == "POST":
# 接收参数
data = json.loads(request.get_data())
app.logger.info(f"接收到的请求数据: {data}")
pool = ThreadPoolExecutor(50)
# 提交任务并获取 Future 对象
futures = [pool.submit(func, item) for item in data]
# 收集结果
results = [future.result() for future in as_completed(futures)]
return jsonify(results)
if __name__ == '__main__':
app.run(host="0.0.0.0", port=8189)