From ebde1069acfdce62474b36196ee4bd2aa8e3cf95 Mon Sep 17 00:00:00 2001 From: ipid Date: Sun, 2 Jun 2024 01:03:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BA=8C=E7=BB=B4=E7=A0=81=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=BD=BF=E7=94=A8=20getPayParam=EF=BC=9B=E4=BA=8C?= =?UTF-8?q?=E7=BB=B4=E7=A0=81=E6=98=BE=E7=A4=BA=E5=B0=BA=E5=AF=B8=E9=99=90?= =?UTF-8?q?=E5=AE=9A=E4=B8=BA=20300x300=20=E4=B8=94=E9=81=BF=E5=85=8D?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=E6=8C=A1=E4=BD=8F=E4=BA=8C=E7=BB=B4=E7=A0=81?= =?UTF-8?q?=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 10 +++++++++- tab/go.py | 4 +--- util/order_qrcode.py | 15 ++++++++------- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/main.py b/main.py index 29cbcc9..d0c7b76 100644 --- a/main.py +++ b/main.py @@ -18,10 +18,18 @@ """ +custom_css = """ +.pay_qrcode img { + width: 300px !important; + height: 300px !important; + margin-top: 20px; /* 避免二维码头部的说明文字挡住二维码 */ +} +""" + if __name__ == "__main__": logger.add("app.log") - with gr.Blocks(head=short_js) as demo: + with gr.Blocks(head=short_js, css=custom_css) as demo: gr.Markdown(header) with gr.Tab("配置"): setting_tab() diff --git a/tab/go.py b/tab/go.py index d10b86f..742ac35 100644 --- a/tab/go.py +++ b/tab/go.py @@ -153,8 +153,6 @@ def start_go(tickets_info_str, time_start, interval, mode, total_attempts): if errno == 0: qrcode_url = get_qrcode_url( _request, - request_result["data"]["token"], - tickets_info["project_id"], request_result["data"]["orderId"], ) qr_gen = qrcode.QRCode() @@ -263,7 +261,7 @@ def go_tab(): max_lines=10, ) - qr_image = gr.Image(label="使用微信或者支付宝扫码支付", visible=False) + qr_image = gr.Image(label="使用微信或者支付宝扫码支付", visible=False, elem_classes="pay_qrcode") with gr.Row(visible=False) as gt_row: gt_html_btn = gr.Button("点击打开抢票验证码(请勿多点!!)") diff --git a/util/order_qrcode.py b/util/order_qrcode.py index d7f5325..abb2c1b 100644 --- a/util/order_qrcode.py +++ b/util/order_qrcode.py @@ -1,12 +1,13 @@ import time -def get_qrcode_url(_request, token, project_id, order_id): - url = f"https://show.bilibili.com/api/ticket/order/createstatus?token={token}" - f"×tamp={int(round(time.time() * 1000))}" - f"&project_id={project_id}&orderId={order_id}" +def get_qrcode_url(_request, order_id): + url = f"https://show.bilibili.com/api/ticket/order/getPayParam?order_id={order_id}" data = _request.get(url).json() - if data["errno"] == 0: - return data["data"]["payParam"]["code_url"] - else: + try: + if data["errno"] == 0: + return data["data"]["code_url"] + else: + raise Exception + except Exception: return None