From 33a591daa00a6ba03228f078f1985a4d2df524e3 Mon Sep 17 00:00:00 2001 From: qicfan Date: Thu, 5 Dec 2024 14:10:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=89=AB=E7=A0=81=E7=99=BB?= =?UTF-8?q?=E5=BD=95=EF=BC=88=E8=A7=A3=E5=86=B3115=E7=9A=84cookie=E5=A4=B1?= =?UTF-8?q?=E6=95=88=E9=97=AE=E9=A2=98=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 ++------ main.py | 11 +---------- 2 files changed, 3 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index e824b22..30480f7 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ > 如果有字幕文件,建议修改config.json中的meta_ext,只输入字幕扩展名如.srt即可 ## 特性 +- 扫码获取cookie(无需其他方式配合) - 使用115目录树,只有一次请求,不会风控,后续操作都不会跟115交互 - 支持两种使用模式 - 本地挂载目录:主要是CD2,会将媒体文件的真实路径写入STRM文件,支持复制元数据 @@ -13,10 +14,6 @@ - 目录树文件在使用完后会自动删除(请不要中途中断执行) ## 一、准备工作 -### 获取Cookie -需要通过各种方法获取cookie,然后写入./15-cookies.txt文件h或者写入config.json的115-cookies字段 -可以直接使用alist的115存储中添加的cookie - ### 修改配置文件: config.json: - 115-cookies: 将115的cookie放入这里,会优先使用115-cookies.txt文件 - strm_root_dir: 115网盘挂载根目录对应的strm文件存放目录,例如:/vol2/1000/网盘/115,媒体服务器的媒体库就选择这个目录下的内容 @@ -29,8 +26,6 @@ - username: alist用户名,例如:strm - password: alist密码(不要包含:和@,尽量简单,可以专门添加一个只读权限的用户),例如:123123 -获取cookie的方法请自行搜索 - ## 二、可执行文件运行: 1. 下载对应平台的压缩包,并解压 2. 打开终端切换到项目目录执行命令,比如解压到了D盘q115-strm目录: @@ -70,6 +65,7 @@ python3 main.py -t=local -e=Media -c=0 - [x] 元数据复制 - [x] 支持源文件不存在时删除目标文件 - [x] 支持alist webdav +- [x] 支持扫码登录(解决其他三方获取cookie可能失败的问题) - [ ] docker支持 + 简单的web ui (v0.2版本) - [ ] docker版本增加监控文件变更,自动生成STRM (v0.2版本) - [ ] docker版本接入CD2的webhook,自动生成STRM (v0.2版本) diff --git a/main.py b/main.py index 0470f9d..cab2c1f 100644 --- a/main.py +++ b/main.py @@ -158,16 +158,7 @@ def work(): def get_src_tree_list(): ### 解析115目录树,生成目录数组 - cookies = '' - if os.path.exists('./115-cookies.txt'): - with open('./115-cookies.txt', mode='r', encoding='utf-8') as f: - cookies = f.read() - if cookies == '' and config['115-cookies'] != '': - cookies = config['115-cookies'] - if cookies == '': - logger.error('请先配置155 cookies') - sys.exit(1) - client = P115Client(Path("../strm/115-cookies.txt").expanduser(), check_for_relogin=True) + client = P115Client(Path("./115-cookies.txt").expanduser(), ensure_cookies=True, check_for_relogin=True) it = tool.export_dir_parse_iter(client=client, export_file_ids=export_dir_path, target_pid=export_dir_path, parse_iter=tool.parse_export_dir_as_dict_iter, delete=True, async_=False, show_clock=True) i = 0