guessit-io / guessit

GuessIt is a python library that extracts as much information as possible from a video filename.
https://guessit-io.github.io/guessit
GNU Lesser General Public License v3.0
824 stars 91 forks source link

TypeError: \'NoneType\' object is not iterable #785

Open Hege-mon opened 3 months ago

Hege-mon commented 3 months ago

Just installaed a Bazarr .qpkg on a QNAP NAS, set it up following Bazarr's guide and getting this error on every file I tested. I'm not sure if this is the right place to report this issue, but that's what the log says :) Any ideas? Thanks.


> Traceback (most recent call last):
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 200, in guessit
>     config = self.configure(options, sanitize_options=False)
>              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 175, in configure
>     self.rebulk = rules_builder(advanced_config)
>                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/rules/__init__.py", line 63, in rebulk_builder
>     rebulk.rebulk(date(_config(\'date\')))
>                   ^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/rules/properties/date.py", line 35, in date
>     :param string:
>              ^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/reutils.py", line 24, in build_or_pattern
>     for pattern in patterns:
> TypeError: \'NoneType\' object is not iterable
> The above exception was the direct cause of the following exception:
> Traceback (most recent call last):
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/subtitles/utils.py", line 41, in get_video
>     video = parse_video(path, hints=hints, skip_hashing=skip_hashing, dry_run=used_scene_name, providers=providers,
>             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../custom_libs/subzero/video.py", line 61, in parse_video
>     return scan_video(fn, hints=hints, dont_use_actual_file=dry_run, providers=providers,
>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../custom_libs/subliminal_patch/core.py", line 838, in scan_video
>     guessed_result = guessit(path, options=hints)
>                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 74, in guessit
>     return default_api.guessit(string, options)
>            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 225, in guessit
>     raise GuessitException(string, options) from err
> guessit.api.GuessitException: An internal error has occurred in guessit.
> ===================== Guessit Exception Report =====================
> version=3.8.0
> string=/share/Media/Seriale/The 100/The.100.S07.1080p.AMZN.WEBRip.DDP5.1.x264-CasStudio[rartv]/The.100.S07E16.The.Last.War.1080p.AMZN.WEB-DL.DD5.1.H.264-CasStudio.mkv
> options={\'title\': \'The 100\', \'type\': \'episode\', \'single_value\': True}
> --------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 200, in guessit
>     config = self.configure(options, sanitize_options=False)
>              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/api.py", line 175, in configure
>     self.rebulk = rules_builder(advanced_config)
>                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/rules/__init__.py", line 63, in rebulk_builder
>     rebulk.rebulk(date(_config(\'date\')))
>                   ^^^^^^^^^^^^^^^^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/rules/properties/date.py", line 35, in date
>     :param string:
>              ^^^^^^
>   File "/share/CACHEDEV1_DATA/.qpkg/Bazarr83/Bazarr/bazarr/../libs/guessit/reutils.py", line 24, in build_or_pattern
>     for pattern in patterns:
> TypeError: \'NoneType\' object is not iterable
> --------------------------------------------------------------------
> Please report at https://github.com/guessit-io/guessit/issues.
> ====================================================================