From 8b9db9b081f02bda745ff14d1388056c522b9631 Mon Sep 17 00:00:00 2001 From: mikumifa <1055069518@qq.com> Date: Thu, 25 Apr 2024 01:17:22 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=87=AA=E5=8A=A8=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E9=A9=B1=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 2 +- requirements.txt | 2 +- tab/go.py | 22 +++++++++++++--------- util/config_util.py | 11 ++++++----- 4 files changed, 21 insertions(+), 16 deletions(-) diff --git a/main.py b/main.py index c2330a9..29cbcc9 100644 --- a/main.py +++ b/main.py @@ -19,7 +19,7 @@ """ if __name__ == "__main__": - logger.add("app_{time}.log") + logger.add("app.log") with gr.Blocks(head=short_js) as demo: gr.Markdown(header) diff --git a/requirements.txt b/requirements.txt index 6d30530..24902eb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,4 +3,4 @@ requests~=2.31.0 setuptools~=65.5.1 gradio~=4.27.0 qrcode~=7.4.2 -loguru \ No newline at end of file +loguru~=0.7.2 \ No newline at end of file diff --git a/tab/go.py b/tab/go.py index 1862fb3..a7b88ec 100644 --- a/tab/go.py +++ b/tab/go.py @@ -1,10 +1,11 @@ -from datetime import datetime import json import time -from loguru import logger -import qrcode +from datetime import datetime from urllib.parse import urlencode + import gradio as gr +import qrcode +from loguru import logger from common import format_dictionary_to_string from config import cookies_config_path @@ -12,13 +13,13 @@ from util.error import ERRNO_DICT from util.order_qrcode import get_qrcode_url - isRunning = False gt = "" challenge = "" geetest_validate = "" geetest_seccode = "" + def start_go(tickets_info_str, time_start, interval, mode, total_attempts): global isRunning, geetest_validate, geetest_seccode global gt @@ -31,8 +32,8 @@ def start_go(tickets_info_str, time_start, interval, mode, total_attempts): try: if time_start != "": time_difference = ( - datetime.strptime(time_start, "%Y-%m-%dT%H:%M").timestamp() - - time.time() + datetime.strptime(time_start, "%Y-%m-%dT%H:%M").timestamp() + - time.time() ) if time_difference > 0: logger.info("等待中") @@ -138,7 +139,7 @@ def start_go(tickets_info_str, time_start, interval, mode, total_attempts): ) yield [ gr.update( - value=f"正在抢票,具体情况查看终端控制台。\n剩余次数: {left_time_str} 当前状态码: {errno}({ERRNO_DICT.get(errno, "未知错误码")})", + value=f"正在抢票,具体情况查看终端控制台。\n剩余次数: {left_time_str} 当前状态码: {errno}({ERRNO_DICT.get(errno, '未知错误码')})", visible=True, ), gr.update(visible=True), @@ -193,6 +194,8 @@ def start_go(tickets_info_str, time_start, interval, mode, total_attempts): gr.update(), gr.update(), ] + + def go_tab(): with gr.Column(): ticket_ui = gr.TextArea( @@ -294,12 +297,13 @@ def go_tab(): outputs=geetest_result, js="() => captchaObj.getValidate()", ) + def receive_geetest_result(res): global geetest_validate, geetest_seccode geetest_validate = res["geetest_validate"] geetest_seccode = res["geetest_seccode"] - geetest_result.change(fn=receive_geetest_result, inputs=geetest_result) + geetest_result.change(fn=receive_geetest_result, inputs=geetest_result) go_btn.click( fn=None, @@ -327,4 +331,4 @@ def stop(): fn=stop, inputs=None, outputs=[go_ui, stop_btn, qr_image, gt_row], - ) \ No newline at end of file + ) diff --git a/util/config_util.py b/util/config_util.py index 5c6b992..9618f70 100644 --- a/util/config_util.py +++ b/util/config_util.py @@ -1,11 +1,13 @@ import json import time -import requests +import requests from loguru import logger from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait +from webdriver_manager.chrome import ChromeDriverManager +from webdriver_manager.microsoft import EdgeChromiumDriverManager class CookieManager: @@ -17,14 +19,14 @@ def __init__(self, config_file_path): @logger.catch def _login_and_save_cookies( - self, login_url="https://show.bilibili.com/platform/home.html" + self, login_url="https://show.bilibili.com/platform/home.html" ): logger.info("启动浏览器中.....") try: - self.driver = webdriver.Chrome() + self.driver = webdriver.Edge(EdgeChromiumDriverManager().install()) except Exception: try: - self.driver = webdriver.Chrome() + self.driver = webdriver.Chrome(ChromeDriverManager().install()) except Exception: raise Exception( "没有找到浏览器驱动,请根据自己的浏览器下载相应的驱动:\n" @@ -60,7 +62,6 @@ def get_cookies(self): self.config = json.load(f) except Exception: return self._login_and_save_cookies() - if self.config == {}: return self._login_and_save_cookies() else: