[BUG] 可自由配置抖音aweme_type怎么走下载
目前对aweme_type的支持是写死在代码里的,现在多了很多未支持的aweme_type,比如51、53、66,虽然不清楚这些类型具体是什么意思,但是人为确认过视频以及数据结构,是和视频完全兼容的,在抖音看就是正常的一个视频,希望能通过kwargs或者其他更好的方式由外部可配置控制这里的下载行为
https://github.com/Johnserf-Seed/f2/blob/7dab3e2ffffaa2535834d28fca99dbc2e89fa9d3/f2/apps/douyin/dl.py#L143-L146
Similarity Issues
- 85% #392
- 85% #358
- 85% #346
- 85% #326
- 85% #74
- 55% #351
- 55% #223
- 55% #119
- 50% #270
- 50% #53
目前 aweme_type 的支持确实是直接写死在代码里的(比如 [0, 4, 55, 61, 109, 201]),没有通过 kwargs 或配置文件让用户自定义哪些类型走视频下载逻辑。每次遇到新类型(如 51、53、66)都需要手动改代码,这在 issue 区也有多次反馈和类似讨论,比如 这里 和 这里。
目前 handler_download 方法虽然支持通过 kwargs 控制 music、cover、desc 等下载行为,但 aweme_type 的判断依然是硬编码的,没有暴露配置入口。如果要实现你的需求,需要把 [0, 4, 55, 61, 109, 201] 这样的列表改为可通过 kwargs(或配置文件)传入,比如:
video_types = self.kwargs.get("video_types", [0, 4, 55, 61, 109, 201])
if aweme_type in video_types:
await self.download_video()
这样就可以在外部配置 video_types,无需每次都改源码,支持未来更多 aweme_type 的扩展。当前代码和文档都没有现成的可配置方案,只有手动改源码的方式。相关代码参考
To reply, just mention @dosu.
How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other
目前的解决方案是抛弃顶层的高级入口handle_xxx和download_xxx,只能自己另外实现并直接调用initiate_download