hsuyelin / nas-tools

NAS媒体库管理工具
GNU Affero General Public License v3.0
2.41k stars 464 forks source link

[错误报告]: tmdb v3 api 语言设置导致搜索问题 #369

Closed Teddy-Zhu closed 1 year ago

Teddy-Zhu commented 1 year ago

确认

当前程序版本

v3.3.9 fc92254

问题类型

主程序运行问题

问题描述

种子 : 非常警察.China.Super.Police.2023.2160p.WEB-DL.H265.HDR.AAC 测试识别 : 识别到错误的电影

debug了一下程序发现个问题 tmdb v3 搜索的url 是 '=https://api.themoviedb.org/3/search/movie?api_key={替换tmdbapikey}&include_adult=false&query=%E9%9D%9E%E5%B8%B8%E8%AD%A6%E5%AF%9F&year=2023&language=zh

搜索结果是空的,会导致程序扔掉年份再查询一次,通过查询官方api文档 ttps://api.themoviedb.org/3/configuration/language 获取的language 是 cn ,然后我将url参数的language 改为 cn 成功搜索到结果 以上是第一个问题, 通过修改 config.yaml 测试结果还是不行 通过debug发现 app/media/tmdbv3api/objs/search.py 下的

    def __update_language(self, params):
        if not isinstance(params, dict):
            return
        query = params.get("query", "") or ""
        if not StringUtils.is_string_and_not_empty(query):
            return
        is_chinese = StringUtils.is_chinese(query)
        self.language = "zh" if is_chinese else "en"

这边hardcode了 language 所以需要修改这边zh 为cn 这是第二个问题

另外全局还有很多写死的默认值zh

—————- 补充

这边似乎是因为zh 反而搜索不到,cn是错误的语言反而认为没设置语言全量搜索到了

发生问题时系统日志和配置文件

No response

designcolorfullife commented 1 year ago

您好,这里是张威的邮箱,您的来信已收到,我将尽快给您回复,谢谢!

Teddy-Zhu commented 1 year ago

没有提pr是因为不确定是不是理解正确,会不会造成其他影响 如果没确认的话 我可以提个pr

jackloves111 commented 1 year ago

这个可以。现在就是搜索问题的修复比较重要,其他的都是次要的

Teddy-Zhu commented 1 year ago

今天再次测试又能搜索到了,应该是tmdb不同的语言缓存问题,暂时关闭issue