From d4d08fc8f8f5a2adefa7d53b32c1b494bbe89359 Mon Sep 17 00:00:00 2001 From: xaoyaoo Date: Tue, 9 Jan 2024 22:36:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=98=AF=E5=90=A6=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=B1=80=E5=9F=9F=E7=BD=91=E8=AE=BF=E9=97=AE=E9=80=89?= =?UTF-8?q?=E9=A1=B9=EF=BC=8C=E9=BB=98=E8=AE=A4=E4=B8=BAfalse?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pywxdump/cli.py | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/pywxdump/cli.py b/pywxdump/cli.py index f80e400..251d6a1 100644 --- a/pywxdump/cli.py +++ b/pywxdump/cli.py @@ -185,6 +185,8 @@ class MainShowChatRecords(): metavar="") sb_decrypt.add_argument("-myid", "--my_wxid", type=str, help="(可选)微信账号(本人微信id)", required=False, default="wxid_vzzcn5fevion22", metavar="") + sb_decrypt.add_argument("--online", type=bool, help="(可选)是否在线查看(局域网查看)", required=False, + default=False, metavar="") return sb_decrypt def run(self, args): @@ -206,22 +208,8 @@ class MainShowChatRecords(): from flask_cors import CORS from pywxdump.api import api - # if getattr(sys, 'frozen', False): - # # The application is run as a bundled executable (PyInstaller) - # base_dir = sys._MEIPASS - # else: - # # The application is run as a script - # base_dir = os.path.abspath(os.path.dirname(__file__)) - - # template_folder = os.path.join(base_dir, 'ui/web') - # static_folder = os.path.join(base_dir, 'ui/web/assets/') - app = Flask(__name__, template_folder='./ui/web', static_folder='./ui/web/assets/', static_url_path='/assets/') - # app.template_folder = template_folder - # app.static_folder = static_folder - # app.static_url_path = '/assets/' - app.logger.setLevel(logging.ERROR) CORS(app, resources={r"/*": {"origins": "*"}}, supports_credentials=True) # 允许所有域名跨域 @@ -252,8 +240,9 @@ class MainShowChatRecords(): print("Unsupported platform, can't open browser automatically.") except Exception as e: pass - import socket + def is_port_in_use(host, port): + import socket with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: try: s.bind((host, port)) @@ -261,8 +250,13 @@ class MainShowChatRecords(): return True return False + online = args.online # 检查端口是否被占用 - host = '0.0.0.0' + if online: + host = '0.0.0.0' + else: + host = "127.0.0.1" + port = 5000 if is_port_in_use(host, port): print(f"Port {port} is already in use. Choose a different port.") @@ -432,6 +426,7 @@ class MainAll(): args.media_path = merge_save_path args.wxid_path = filePath args.my_wxid = wxid + args.online = False MainShowChatRecords().run(args)