fix: 修复代码逻辑错误

修正英语项目说明

BREAKING CHANGE: 恢复内置延时机制
This commit is contained in:
JoeanAmier 2024-12-22 15:15:08 +08:00
parent f5e9bc306d
commit 10a09b4c0b
6 changed files with 53 additions and 36 deletions

View File

@ -283,8 +283,8 @@ async def example():
<tr>
<td align="center">name_format</td>
<td align="center">str</td>
<td align="center">Format for content file names. Separate fields with spaces. Supported fields: <code>collects</code>, <code>comments</code>, <code>shares</code>, <code>likes</code>, <code>tags</code>, <code>ID</code>, <code>title</code>, <code>description</code>, <code>type</code>, <code>publish_time</code>, <code>last_update_time</code>, <code>author_nickname</code>, <code>author_id</code></td>
<td align="center"><code>publish_time author_nickname title</code></td>
<td align="center"><sup><a href="#fields">1</a></sup>Format of works file name, separated by spaces between fields, supports fields: <code>收藏数量</code><code>评论数量</code><code>分享数量</code><code>点赞数量</code><code>作品标签</code><code>作品ID</code><code>作品标题</code><code>作品描述</code><code>作品类型</code><code>发布时间</code><code>最后更新时间</code><code>作者昵称</code><code>作者ID</code></td>
<td align="center"><code>发布时间 作者昵称 作品标题</code></td>
</tr>
<tr>
<td align="center">user_agent</td>
@ -372,6 +372,24 @@ async def example():
</tr>
</tbody>
</table>
<div id="fields">
<p>name_format instructions (Currently only supports Chinese values) :</p>
<ul>
<li><code>收藏数量</code>: Number of Collections</li>
<li><code>评论数量</code>: Number of Comments</li>
<li><code>分享数量</code>: Number of Shares</li>
<li><code>点赞数量</code>: Number of Likes</li>
<li><code>作品标签</code>: Works Tags</li>
<li><code>作品ID</code>: Works ID</li>
<li><code>作品标题</code>: Works Title</li>
<li><code>作品描述</code>: Works Description</li>
<li><code>作品类型</code>: Works Type</li>
<li><code>发布时间</code>: Publish Time</li>
<li><code>最后更新时间</code>: Last Updated Time</li>
<li><code>作者昵称</code>: Author Nickname</li>
<li><code>作者ID</code>: Author ID</li>
</ul>
</div>
<p><b>Additional Notes: The parameters <code>user_agent</code> examples are provided for reference; Strongly recommend setting according to actual browser information!</b></p>
<img src="static/screenshot/请求头示例图.png" alt="">
<h1>🌐 Cookie</h1>

View File

@ -255,13 +255,12 @@ class XHS:
if not data:
logging(log, _("{0} 提取数据失败").format(i), ERROR)
return {}
match data["作品类型"]:
case _("视频"):
self.__extract_video(data, namespace)
case _("图文"):
self.__extract_image(data, namespace)
case _:
data["下载地址"] = []
if data["作品类型"] == _("视频"):
self.__extract_video(data, namespace)
elif data["作品类型"] == _("图文"):
self.__extract_image(data, namespace)
else:
data["下载地址"] = []
await self.__download_files(data, download, index, log, bar)
logging(log, _("作品处理完成:{0}").format(i))
await sleep_time()

View File

@ -71,25 +71,24 @@ class Download:
bar,
) -> tuple[Path, list[Any]]:
path = self.__generate_path(name)
match type_:
case _("视频"):
tasks = self.__ready_download_video(
urls,
path,
name,
log,
)
case _("图文"):
tasks = self.__ready_download_image(
urls,
lives,
index,
path,
name,
log,
)
case _:
raise ValueError
if type_ == _("视频"):
tasks = self.__ready_download_video(
urls,
path,
name,
log,
)
elif type_ == _("图文"):
tasks = self.__ready_download_image(
urls,
lives,
index,
path,
name,
log,
)
else:
raise ValueError
tasks = [
self.__download(
url,

View File

@ -8,7 +8,9 @@ __all__ = ['Explore']
class Explore:
time_format = "%Y-%m-%d_%H:%M:%S"
explore_type = {"video": _("视频"), "normal": _("图文")}
def __init__(self):
self.explore_type = {"video": _("视频"), "normal": _("图文")}
def run(self, data: Namespace) -> dict:
return self.__extract_data(data)

View File

@ -1,5 +1,5 @@
# from asyncio import sleep
# from random import uniform
from asyncio import sleep
from random import uniform
from rich import print
from rich.text import Text
@ -28,8 +28,7 @@ def logging(log, text, style=INFO):
async def sleep_time(
min_time: int | float = 1,
max_time: int | float = 3,
min_time: int | float = 0.5,
max_time: int | float = 1.5,
):
pass
# await sleep(uniform(min_time, max_time))
await sleep(uniform(min_time, max_time))

View File

@ -7,4 +7,4 @@
5. 重构项目翻译模块
6. 更正英语语言代码
7. 优化文件下载功能
8. 移除内置延时机制
8. 降低内置延时机制