{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "##### 启动voltaml (有输出日志..)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import multiprocessing\n", "import time\n", "import subprocess\n", "\n", "use_ngrok = True\n", "use_cloudflare = True\n", "\n", "def start_tunnel():\n", " if use_ngrok:\n", " from pyngrok import ngrok\n", " ngrok_tunnel = ngrok.connect(5003, \"http\")\n", " print(\"ngrok_tunnel:\", ngrok_tunnel)\n", " if use_cloudflare:\n", " from pycloudflared import try_cloudflare\n", " cloudflare_url = try_cloudflare(5003, verbose=False)\n", " print(\"cloudflare_tunnel:\", cloudflare_url)\n", "\n", "def voltaML_start():\n", " print(\"启动alist...\")\n", " process = subprocess.Popen([\"python\", \"main.py\"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n", " for line in process.stdout:\n", " output = line.decode().strip()\n", " if output:\n", " print(output)\n", "\n", "voltaML_process = multiprocessing.Process(target=voltaML_start)\n", "voltaML_process.start()\n", "time.sleep(3)\n", "\n", "start_tunnel()\n", "\n", "# 提示用户如何暂停代码的执行\n", "print(\"代码正在运行中。要手动暂停代码的执行,请点击左侧的暂停按钮。\")\n", "\n", "# 检查voltaML_process进程是否仍在运行\n", "while voltaML_process.is_alive():\n", " time.sleep(1)\n", "\n", "print(\"主程序继续执行...\")" ] } ], "metadata": { "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 2 }