jxxghp / MoviePilot

NAS媒体库自动化管理工具
https://wiki.movie-pilot.org
GNU General Public License v3.0
6.12k stars 731 forks source link

在匹配数据时报错AttributeError: 'str' object has no attribute 'items' #2227

Closed qqqaaassshu closed 3 months ago

qqqaaassshu commented 3 months ago

确认

当前程序版本

v1.9.2

运行环境

Docker

问题类型

主程序运行问题

问题描述

在Issue #1245 和 #887 中的方法均已尝试,但是还是会报这个错. 如果无法避免,是否可以切换一个友好提示,现在这个提示无法判断是什么问题造成的,期待大佬回复 测试网络联通性:

image

二级分类已经取消,均改为自定义识别及路径了:

image image

MDB_API_DOMAIN 改成 api.tmdb.org

image

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

AttributeError: 'str' object has no attribute 'items'
                       ^^^^^^^^^^
    for attr, value in item.items():
  File "/app/app/modules/themoviedb/category.py", line 113, in get_category
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return self.get_category(self._movie_categorys, tmdb_info)
  File "/app/app/modules/themoviedb/category.py", line 87, in get_movie_category
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    cat = self.category.get_movie_category(info)
  File "/app/app/modules/themoviedb/__init__.py", line 175, in recognize_media
             ^^^^^^^^^^^^^^^^^^^^^
    result = func(*args, **kwargs)
  File "/app/app/chain/__init__.py", line 106, in run_module
Traceback (most recent call last):
【ERROR】2024-05-30 10:21:10,864 - chain - 运行模块 TheMovieDbModule.recognize_media 出错:'str' object has no attribute 'items'
【INFO】2024-05-30 10:21:10,848 - themoviedb - 正在识别 Bionic ...
【INFO】2024-05-30 10:21:10,835 - subscribe.py - 聆音 - Bionic 2024 2160p NF WEB-DL DDP5.1 Atmos H.265-HHWEB 订阅缓存为未识别状态,尝试重新识别...
【WARNING】2024-05-30 10:21:10,831 - subscribe.py - 聆音 - Tokyo Decadence 1992.1080p BluRay FLAC1 0 x264-PTer mkv 重新识别失败,尝试通过标题匹配...

AttributeError: 'str' object has no attribute 'items'
                       ^^^^^^^^^^
    for attr, value in item.items():
  File "/app/app/modules/themoviedb/category.py", line 113, in get_category
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return self.get_category(self._movie_categorys, tmdb_info)
  File "/app/app/modules/themoviedb/category.py", line 87, in get_movie_category
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    cat = self.category.get_movie_category(info)
  File "/app/app/modules/themoviedb/__init__.py", line 175, in recognize_media
             ^^^^^^^^^^^^^^^^^^^^^
    result = func(*args, **kwargs)
  File "/app/app/chain/__init__.py", line 106, in run_module
Traceback (most recent call last):
【ERROR】2024-05-30 10:21:10,829 - chain - 运行模块 TheMovieDbModule.recognize_media 出错:'str' object has no attribute 'items'
【INFO】2024-05-30 10:21:10,818 - themoviedb - 正在识别 Tokyo Decadence ...
【INFO】2024-05-30 10:21:10,804 - subscribe.py - 聆音 - Tokyo Decadence 1992.1080p BluRay FLAC1 0 x264-PTer mkv 订阅缓存为未识别状态,尝试重新识别...
【WARNING】2024-05-30 10:21:10,800 - subscribe.py - 聆音 - Civil War 2024 2160p iTunes WEB-DL DDP 5.1 Atmos HDR10+ H.265-CHDWEB 重新识别失败,尝试通过标题匹配...

AttributeError: 'str' object has no attribute 'items'
                       ^^^^^^^^^^
    for attr, value in item.items():
  File "/app/app/modules/themoviedb/category.py", line 113, in get_category
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return self.get_category(self._movie_categorys, tmdb_info)
  File "/app/app/modules/themoviedb/category.py", line 87, in get_movie_category
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    cat = self.category.get_movie_category(info)
  File "/app/app/modules/themoviedb/__init__.py", line 175, in recognize_media
             ^^^^^^^^^^^^^^^^^^^^^
    result = func(*args, **kwargs)
  File "/app/app/chain/__init__.py", line 106, in run_module
Traceback (most recent call last):
【ERROR】2024-05-30 10:21:10,798 - chain - 运行模块 TheMovieDbModule.recognize_media 出错:'str' object has no attribute 'items'
【INFO】2024-05-30 10:21:10,785 - themoviedb - 正在识别 Civil War ...
【INFO】2024-05-30 10:21:10,770 - subscribe.py - 聆音 - Civil War 2024 2160p iTunes WEB-DL DDP 5.1 Atmos HDR10+ H.265-CHDWEB 订阅缓存为未识别状态,尝试重新识别...
【WARNING】2024-05-30 10:21:10,766 - subscribe.py - 聆音 - late night with the devil 2023 2160p web h265-satan mkv 重新识别失败,尝试通过标题匹配...

AttributeError: 'str' object has no attribute 'items'
                       ^^^^^^^^^^
    for attr, value in item.items():
  File "/app/app/modules/themoviedb/category.py", line 113, in get_category
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    return self.get_category(self._movie_categorys, tmdb_info)
  File "/app/app/modules/themoviedb/category.py", line 87, in get_movie_category
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    cat = self.category.get_movie_category(info)
  File "/app/app/modules/themoviedb/__init__.py", line 175, in recognize_media
             ^^^^^^^^^^^^^^^^^^^^^
    result = func(*args, **kwargs)
  File "/app/app/chain/__init__.py", line 106, in run_module
Traceback (most recent call last):
qqqaaassshu commented 3 months ago

自己排查后发现,原来是之前改的category.yaml文件里编写的二级目录不正确,电影和电视剧国家识别的字段不一致.打扰大佬了