podflow 20250323.1__py3-none-any.whl → 20250325__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,7 @@
3
3
 
4
4
  import os
5
5
  import hashlib
6
+ import pkg_resources
6
7
  from datetime import datetime
7
8
  import cherrypy
8
9
  from bottle import Bottle, abort, redirect, request, static_file, response, template
@@ -38,6 +39,7 @@ class bottle_app:
38
39
  self.app_bottle.route("/upload", method="POST", callback=self.upload)
39
40
  else:
40
41
  # 设置其他路由,回调函数为serve_static
42
+ self.app_bottle.route("/try", method=["GET", "POST"], callback=self.try1)
41
43
  self.app_bottle.route("/index", method=["GET", "POST"], callback=self.index)
42
44
  self.app_bottle.route("/<filename:path>", callback=self.serve_static)
43
45
 
@@ -249,12 +251,14 @@ class bottle_app:
249
251
  }
250
252
 
251
253
  # 获取Channel-ID请求
252
- def index(self):
254
+ def index(self):
253
255
  if request.method == "POST":
254
256
  user_input = request.forms.get("inputOutput") # 获取用户输入
255
257
  processed_input = get_channelid(user_input)
256
258
  self.print_out("channelid", 200)
257
- return template(html_index, processed_input=processed_input) # 直接回显到输入框
259
+ return template(
260
+ html_index, processed_input=processed_input
261
+ ) # 直接回显到输入框
258
262
  else:
259
263
  self.print_out("index", 200)
260
264
  return template(html_index, processed_input="") # 默认输入框为空
@@ -374,8 +378,7 @@ class bottle_app:
374
378
  "filename": filename,
375
379
  },
376
380
  }
377
- else:
378
- num += 1
381
+ num += 1
379
382
  else:
380
383
  file_save(upload_file, filename, address)
381
384
  # 打印成功信息并返回成功码
@@ -388,5 +391,12 @@ class bottle_app:
388
391
  },
389
392
  }
390
393
 
394
+ def try1(self):
395
+ # 使用pkg_resources获取模板文件路径
396
+ template_path = pkg_resources.resource_filename('Podflow', 'views/try.html')
397
+ with open(template_path, 'r') as f:
398
+ html_content = f.read()
399
+ return html_content
400
+
391
401
 
392
402
  bottle_app_instance = bottle_app()
Podflow/httpfs/html.py CHANGED
@@ -86,7 +86,7 @@ html_index = '''<!DOCTYPE html>
86
86
  <div class="button-container">
87
87
  <button type="button" onclick="pasteFromClipboard()">📋 粘贴</button>
88
88
  <button type="submit">✅ 提交</button>
89
- //<button type="button" onclick="copyText()">📄 拷贝</button>
89
+ <button type="button" onclick="copyText()">📄 拷贝</button>
90
90
  <button type="button" onclick="clearInput()">🗑️ 清空</button>
91
91
  </div>
92
92
  <p class="hint">📌 如果粘贴按钮无效,请长按输入框手动粘贴。</p>
@@ -27,7 +27,7 @@ def get_youtube_and_bilibili_video_format(id_num, stop_flag, video_format_lock,
27
27
  gVar.video_id_update_format[id_num]["quality"],
28
28
  gVar.video_id_update_format[id_num]["cookie"],
29
29
  )
30
- for fail_info in ["年龄限制", "需登录", "请求拒绝"]:
30
+ for fail_info in ["年龄限制", "需登录", "请求拒绝", "无法获取音频ID"]:
31
31
  if fail_info in id_update_format:
32
32
  if gVar.youtube_cookie:
33
33
  gVar.video_id_update_format[id_num]["cookie"] = "channel_data/yt_dlp_youtube.txt"
@@ -0,0 +1,17 @@
1
+ # Podflow/upload/upload_server.py
2
+ # coding: utf-8
3
+
4
+ import json
5
+
6
+
7
+ def get_uploads_original():
8
+ try:
9
+ # 尝试打开并读取 JSON 文件
10
+ with open("channel_data/upload_server.json", "r") as file:
11
+ uploads_original = file.read() # 读取原始上传数据
12
+ uploads_original = json.loads(
13
+ uploads_original
14
+ ) # 将读取的字符串转换为 Python 对象(列表或字典)
15
+ except Exception:
16
+ # 如果读取或解析失败,将 upload_original 初始化为空列表
17
+ uploads_original = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: podflow
3
- Version: 20250323.1
3
+ Version: 20250325
4
4
  Summary: A podcast server that includes YouTube and BiliBili
5
5
  Home-page: https://github.com/gruel-zxz/podflow
6
6
  Author: gruel_zxz
@@ -14,7 +14,7 @@ Requires-Python: >=3.8
14
14
  Description-Content-Type: text/markdown
15
15
  Requires-Dist: astral>=3.2
16
16
  Requires-Dist: bottle>=0.13.2
17
- Requires-Dist: yt-dlp>=2025.3.21
17
+ Requires-Dist: yt-dlp>=2025.3.25
18
18
  Requires-Dist: chardet>=5.2.0
19
19
  Requires-Dist: cherrypy>=18.10.0
20
20
  Requires-Dist: pyqrcode>=1.2.1
@@ -40,10 +40,10 @@ Podflow/download/show_progress.py,sha256=7oGzhj_frO2A1o5JeGuHn7bHtma5oPpD_IWcctI
40
40
  Podflow/download/wait_animation.py,sha256=E2V3cm-10e5Iif40oU722OfzDe7YiLMbDqsjZ6dshBE,1056
41
41
  Podflow/download/youtube_and_bilibili_download.py,sha256=0uuEO2ybyLlg9uOButjqFvmIkCfq6xiQ7QLV2_u4c_M,1294
42
42
  Podflow/httpfs/__init__.py,sha256=agnAtd2Xe0qfOrElKgoBattAVqUBdj79wU2e2UOpcJM,45
43
- Podflow/httpfs/app_bottle.py,sha256=CkpjSSpsw1l_TYG9tutVnD57VhxFq0KSlb0sHlNa2Kk,16188
43
+ Podflow/httpfs/app_bottle.py,sha256=Zqb-zVlKHKSLUsejzVskb9Jtpgwt4ELaBuBsEZLdpDw,16562
44
44
  Podflow/httpfs/browser.py,sha256=Omr8CHa6BB_pcMEfXeXEtWBgex_8KZ6mUUnDs0yMv6A,197
45
45
  Podflow/httpfs/get_channelid.py,sha256=870GOQWw4YsWi0zbpF4L6uGpHpk4Tp3DvlXGk3uV-pE,2296
46
- Podflow/httpfs/html.py,sha256=dOkQs4L7uTCjJzVX60e7SKYSAfe47u8rKQRM5H4L3Eg,4899
46
+ Podflow/httpfs/html.py,sha256=2Jri7_jDlPVaBcuNfHPvQ9sgzMuiB0-WEQPLZT0Nu2o,4897
47
47
  Podflow/httpfs/port_judge.py,sha256=RrBTxD6lXHbkfiDMu69-EUv0kbflfu1HpPfpB5Wz3MU,764
48
48
  Podflow/makeup/__init__.py,sha256=HaBchKbUjRqqXSGCkMfEqLOyx3tlqB2htXvTDs59owI,45
49
49
  Podflow/makeup/del_makeup_format_fail.py,sha256=rUSJD5lXMBM5pCde1amrtF6s93MMHp66-NHCXZy56AI,642
@@ -60,7 +60,7 @@ Podflow/message/get_media_name.py,sha256=5a9Tuvsr7-jslJ8h3hH23Bh11mN6GcCQmHUQwvw
60
60
  Podflow/message/get_original_rss.py,sha256=QRtpHEYeS9rDh4Cv_EkTIC89eSw0I6540ykrTT3yr-4,2383
61
61
  Podflow/message/get_video_format.py,sha256=RIX0fxuPYkoQPRWt-ulJPhfEWtMkyxwOEVqcuRsp4v8,4770
62
62
  Podflow/message/get_video_format_multithread.py,sha256=ZXzY9RwT59eOvP6Lmx-I07P3C1CWCl-4l_uw_pkozqE,1406
63
- Podflow/message/get_youtube_and_bilibili_video_format.py,sha256=RuaxL3JwZs3_Bqm77g9SIcyV8o-WJu_qOCWhEnD15WE,4321
63
+ Podflow/message/get_youtube_and_bilibili_video_format.py,sha256=PWXvWpvR0qDqg0SVOTJ4ea0qxmsn5rTSbXFDedb06G0,4345
64
64
  Podflow/message/media_format.py,sha256=WH0NnjWPLigU8Wy2kbqDIhj_RISnaCCXtsR5qIjLFdU,7346
65
65
  Podflow/message/original_rss_fail_print.py,sha256=pVVb_BGM1HofHDh9pCX5GS03gOnNAssfHDjj5Ytz_mw,502
66
66
  Podflow/message/rss_create_hash.py,sha256=NODhtprDPkpiuiezupARKm5Xr4Zt2Io_lcxmHedPAQc,638
@@ -89,12 +89,13 @@ Podflow/upload/linked_server.py,sha256=_upOctwNxg7p82tDK1qIuMO8CTZiYoB6dI4wZ3G4A
89
89
  Podflow/upload/login.py,sha256=8BciQddfs7xfmVl5PWYC54-TEt52NjPw3kU-ksFgfV8,4007
90
90
  Podflow/upload/time_key.py,sha256=aR6xVe9x7ry8dKSHKoFLSUIfor2CoCuv8N9NRmsnUVo,967
91
91
  Podflow/upload/update_upload.py,sha256=4B5HyWwfmc_4Z5ZS_Wt2VcL6sgQFvq3JEl0Qubh7TwE,3183
92
+ Podflow/upload/upload_server.py,sha256=RK-Q_qST-HUHSJp8V4r7XYb20rvA1gYHF3rxK2mE2eU,565
92
93
  Podflow/youtube/__init__.py,sha256=-bdMyuw-wxoz2miVkp284amS4Qg0k7VN0JPuGF-cXlM,46
93
94
  Podflow/youtube/build.py,sha256=o6gld4qMph7UKq9pdO2E4dmtOA8brCK4sa_-vKEtYMM,12006
94
95
  Podflow/youtube/get.py,sha256=dFLyiHttygqdJltwC29jD_v8wwoLynE5NUdow_0wERI,16970
95
96
  Podflow/youtube/login.py,sha256=DlS_ZG4g6CKWqS5ojE4UwFJSCSZDsXbeuDVgHtQAa4A,1380
96
- podflow-20250323.1.dist-info/METADATA,sha256=dKypa4p3ifTiOgLgpxAk0zvFVqdSbcXqjOmA34v3OAg,14165
97
- podflow-20250323.1.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
98
- podflow-20250323.1.dist-info/entry_points.txt,sha256=44nj8jJB7bo1JLNrKQZmwMGEA1OalrALJ0tF_G0yXLY,131
99
- podflow-20250323.1.dist-info/top_level.txt,sha256=KcvRCiz_DRWWc9i-PgpARvFB0J4CKmpZOZgPqOdG-Lk,8
100
- podflow-20250323.1.dist-info/RECORD,,
97
+ podflow-20250325.dist-info/METADATA,sha256=yv_g2HHYtdJ_xlL1qB2fskUq7XKFEw5b5tw_3C9o7iw,14163
98
+ podflow-20250325.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
99
+ podflow-20250325.dist-info/entry_points.txt,sha256=44nj8jJB7bo1JLNrKQZmwMGEA1OalrALJ0tF_G0yXLY,131
100
+ podflow-20250325.dist-info/top_level.txt,sha256=KcvRCiz_DRWWc9i-PgpARvFB0J4CKmpZOZgPqOdG-Lk,8
101
+ podflow-20250325.dist-info/RECORD,,