podflow 20250427__tar.gz → 20250430__tar.gz
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.
- {podflow-20250427 → podflow-20250430}/PKG-INFO +1 -1
- {podflow-20250427 → podflow-20250430}/podflow/download/show_progress.py +4 -2
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/app_bottle.py +1 -1
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/download_bar.py +5 -2
- {podflow-20250427 → podflow-20250430}/podflow/main_podcast.py +3 -3
- {podflow-20250427 → podflow-20250430}/podflow/templates/css/index.css +8 -1
- {podflow-20250427 → podflow-20250430}/podflow/templates/index.html +2 -1
- podflow-20250430/podflow/templates/js/index.js +725 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/PKG-INFO +1 -1
- {podflow-20250427 → podflow-20250430}/setup.py +1 -1
- podflow-20250427/podflow/templates/js/index.js +0 -481
- {podflow-20250427 → podflow-20250430}/MANIFEST.in +0 -0
- {podflow-20250427 → podflow-20250430}/README.md +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/file_save.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/folder_build.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/get_duration.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/get_file_list.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/get_html_dict.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/http_client.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/list_merge_tidy.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/qr_code.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/split_dict.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/time_format.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/time_print.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/time_stamp.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/vary_replace.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/basic/write_log.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/bilibili/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/bilibili/build.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/bilibili/get.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/bilibili/login.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/build_original.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/channge_icon.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/correct_channelid.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/correct_config.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/get_channelid.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/get_channelid_id.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/config/get_config.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/convert_bytes.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/delete_part.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/dl_aideo_video.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/wait_animation.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download/youtube_and_bilibili_download.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/download_and_build.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/ffmpeg_judge.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/browser.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/get_channelid.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/port_judge.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/progress_bar.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/httpfs/to_html.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/main.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/main_upload.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/makeup/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/makeup/del_makeup_format_fail.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/makeup/make_up_file.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/makeup/make_up_file_format_mod.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/makeup/make_up_file_mod.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/backup_zip_save.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/create_main_rss.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/display_qrcode_and_url.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/fail_message_initialize.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/format_time.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/get_media_name.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/get_original_rss.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/get_video_format.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/get_video_format_multithread.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/get_youtube_and_bilibili_video_format.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/media_format.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/optimize_download.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/original_rss_fail_print.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/rss_create_hash.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/save_rss.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/title_correction.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/update_information_display.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/update_youtube_bilibili_rss.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/want_retry.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/xml_item.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/xml_original_item.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/message/xml_rss.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/netscape/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/netscape/bulid_netscape.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/netscape/get_cookie_dict.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/parse_arguments.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/remove/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/remove/remove_dir.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/remove/remove_file.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/repair/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/repair/reverse_log.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/templates/js/qrcode.min.js +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/add_upload.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/build_hash.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/get_upload_original.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/linked_client.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/linked_server.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/login.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/time_key.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/update_upload.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/upload/upload_server.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/youtube/__init__.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/youtube/build.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/youtube/get.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow/youtube/login.py +0 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/SOURCES.txt +0 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/dependency_links.txt +0 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/entry_points.txt +0 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/requires.txt +0 -0
- {podflow-20250427 → podflow-20250430}/podflow.egg-info/top_level.txt +0 -0
- {podflow-20250427 → podflow-20250430}/setup.cfg +0 -0
@@ -42,7 +42,8 @@ def show_progress(stream):
|
|
42
42
|
mod=1,
|
43
43
|
per=stream["downloaded_bytes"] / stream["total_bytes"],
|
44
44
|
retime=eta,
|
45
|
-
speed=f"{speed}/s
|
45
|
+
speed=f"{speed}/s",
|
46
|
+
part=f"{downloaded_bytes}/{total_bytes}",
|
46
47
|
status="下载中",
|
47
48
|
)
|
48
49
|
if stream["status"] == "finished":
|
@@ -59,6 +60,7 @@ def show_progress(stream):
|
|
59
60
|
mod=1,
|
60
61
|
per=1,
|
61
62
|
retime=elapsed,
|
62
|
-
speed=f"{speed}/s
|
63
|
+
speed=f"{speed}/s",
|
64
|
+
part=f"{downloaded_bytes}/{total_bytes}",
|
63
65
|
status="下载完成",
|
64
66
|
)
|
@@ -363,7 +363,7 @@ class bottle_app:
|
|
363
363
|
filename = upload_file.filename
|
364
364
|
name = filename.split(".")[0]
|
365
365
|
suffix = filename.split(".")[1]
|
366
|
-
if suffix in ["mp4", "m4a"]:
|
366
|
+
if suffix not in ["mp4", "m4a"]:
|
367
367
|
self.print_out("upload", 404)
|
368
368
|
return {
|
369
369
|
"code": -6,
|
@@ -9,6 +9,7 @@ def download_bar(
|
|
9
9
|
per=0,
|
10
10
|
retime="00:00",
|
11
11
|
speed=" 0.00 B",
|
12
|
+
part="",
|
12
13
|
status="准备中",
|
13
14
|
idname="",
|
14
15
|
nametext="",
|
@@ -20,6 +21,7 @@ def download_bar(
|
|
20
21
|
per,
|
21
22
|
retime,
|
22
23
|
speed,
|
24
|
+
part,
|
23
25
|
status,
|
24
26
|
idname,
|
25
27
|
nametext,
|
@@ -30,6 +32,7 @@ def download_bar(
|
|
30
32
|
gVar.index_message["download"][-1][0] = per
|
31
33
|
gVar.index_message["download"][-1][1] = retime
|
32
34
|
gVar.index_message["download"][-1][2] = speed
|
33
|
-
gVar.index_message["download"][-1][3] =
|
35
|
+
gVar.index_message["download"][-1][3] = part
|
36
|
+
gVar.index_message["download"][-1][4] = status
|
34
37
|
elif mod == 2 and gVar.index_message["download"]:
|
35
|
-
gVar.index_message["download"][-1][
|
38
|
+
gVar.index_message["download"][-1][4] = status
|
@@ -69,7 +69,7 @@ def main_podcast():
|
|
69
69
|
# 初始化
|
70
70
|
build_original()
|
71
71
|
# http共享
|
72
|
-
port = gVar.config.get("port",
|
72
|
+
port = gVar.config.get("port", 8000) # 使用 .get 获取端口
|
73
73
|
hostip = "0.0.0.0"
|
74
74
|
|
75
75
|
if port_judge(hostip, port): # 假设 port_judge 存在
|
@@ -102,8 +102,8 @@ def main_podcast():
|
|
102
102
|
)
|
103
103
|
cherrypy.engine.start() # 启动 CherryPy 服务器
|
104
104
|
time_print(f"HTTP服务器启动, 端口: \033[32m{port}\033[0m")
|
105
|
-
if parse.index:
|
106
|
-
open_url(f"{gVar.config['address']}/index")
|
105
|
+
if parse.index:
|
106
|
+
open_url(f"{gVar.config['address']}/index")
|
107
107
|
if parse.httpfs: # HttpFS参数判断, 是否继续运行
|
108
108
|
cherrypy.engine.block() # 阻止程序退出, 保持HTTP服务运行
|
109
109
|
sys.exit(0)
|
@@ -140,7 +140,6 @@ main.full {
|
|
140
140
|
.common-area {
|
141
141
|
width: 100%;
|
142
142
|
max-width: 520px;
|
143
|
-
padding: 0 8px;
|
144
143
|
color: var(--text-color);
|
145
144
|
transition: background-color 0.3s, color 0.3s, border-color 0.3s;
|
146
145
|
box-sizing: border-box;
|
@@ -159,7 +158,11 @@ textarea {
|
|
159
158
|
background-color: var(--input-bg);
|
160
159
|
font-family: 'Courier New', Courier, monospace; /* 添加字体 */
|
161
160
|
}
|
161
|
+
#inputOutput {
|
162
|
+
padding: 4px 8px;
|
163
|
+
}
|
162
164
|
#messageDownload {
|
165
|
+
padding: 0 8px;
|
163
166
|
max-height: 180px;
|
164
167
|
max-width: 99%;
|
165
168
|
height: auto;
|
@@ -168,6 +171,7 @@ textarea {
|
|
168
171
|
background-color: var(--bg-color);
|
169
172
|
}
|
170
173
|
#messageArea {
|
174
|
+
padding: 4px 8px;
|
171
175
|
height: 250px;
|
172
176
|
font-size: 12px;
|
173
177
|
border: 1px solid var(--input-border);
|
@@ -176,6 +180,7 @@ textarea {
|
|
176
180
|
font-family: 'Courier New', Courier, monospace; /* 添加字体 */
|
177
181
|
}
|
178
182
|
#messageHttp {
|
183
|
+
padding: 4px 8px;
|
179
184
|
height: 100px;
|
180
185
|
font-size: 12px;
|
181
186
|
border: 1px solid var(--input-border);
|
@@ -347,6 +352,8 @@ button:hover {
|
|
347
352
|
margin-left: auto;
|
348
353
|
flex-shrink: 0;
|
349
354
|
align-self: flex-end;
|
355
|
+
position: relative;
|
356
|
+
top: -2px;
|
350
357
|
}
|
351
358
|
.scroll-container {
|
352
359
|
flex: 1; /* 自适应宽度 */
|
@@ -5,6 +5,7 @@
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
6
|
<title>Podflow</title>
|
7
7
|
<link rel="stylesheet" href="/templates/css/index.css" />
|
8
|
+
<link rel="icon" href="favicon.ico" type="image/x-icon">
|
8
9
|
</head>
|
9
10
|
<body>
|
10
11
|
<!-- 菜单栏 -->
|
@@ -53,7 +54,7 @@
|
|
53
54
|
</form>
|
54
55
|
</section>
|
55
56
|
</main>
|
56
|
-
<script src="/templates/js/qrcode.min.js"></script>
|
57
57
|
<script src="/templates/js/index.js"></script>
|
58
|
+
<script src="/templates/js/qrcode.min.js"></script>
|
58
59
|
</body>
|
59
60
|
</html>
|