haijeploeg / excludarr

Excludarr manages your libraries in Radarr/Sonarr. It keeps track of your library and checks if your movies and series are also available on a configured streaming provider. It can exclude the movies and series that are available on a configured streaming provider. But it can also re-add movies and series if they are not streaming anymore.
MIT License
197 stars 12 forks source link

Python Errors on basic run #39

Closed mduijm closed 2 years ago

mduijm commented 2 years ago

Hi,

trying to run an exclude against my radarr instance.

My ENV file is (masked for obvious reasons ;)):

GENERAL_FAST_SEARCH=true GENERAL_LOCALE=en_NL GENERAL_PROVIDERS=Netflix RADARR_URL=https://xxx.xx.com/radarr RADARR_API_KEY=*removed for github RADARR_VERIFY_SSL=true

SONARR_URL=https://xx.xx.com/sonarr

SONARR_API_KEY=secret

SONARR_VERIFY_SSL=false

SONARR_EXCLUDE="Queen of the South, Breaking Bad"

the cli I run is: docker run -it --env-file excludarr.env haijeploeg/excludarr:latest radarr exclude -a not-monitored

the error: Traceback (most recent call last): File "/usr/local/bin/excludarr", line 33, in <module> sys.exit(load_entry_point('excludarr==1.0.3', 'console_scripts', 'excludarr')()) File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/main.py", line 68, in cli File "/usr/local/lib/python3.10/site-packages/typer/main.py", line 214, in __call__ return get_command(self)(*args, **kwargs) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1128, in __call__ return self.main(*args, **kwargs) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1053, in main rv = self.invoke(ctx) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1659, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1659, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 1395, in invoke return ctx.invoke(self.callback, **ctx.params) File "/usr/local/lib/python3.10/site-packages/click/core.py", line 754, in invoke return __callback(*args, **kwargs) File "/usr/local/lib/python3.10/site-packages/typer/main.py", line 500, in wrapper return callback(**use_params) # type: ignore File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/commands/radarr.py", line 86, in exclude File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/core/radarr_actions.py", line 85, in get_movies_to_exclude File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/v3/movie.py", line 16, in get_all_movies File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 70, in http_get File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 65, in http_request File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 65, in http_request File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 65, in http_request File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 61, in http_request File "/usr/local/lib/python3.10/site-packages/excludarr-1.0.3-py3.10.egg/excludarr/modules/pyradarr/__init__.py", line 49, in _filter_api_error File "/usr/local/lib/python3.10/site-packages/requests/models.py", line 910, in json return complexjson.loads(self.text, **kwargs) File "/usr/local/lib/python3.10/json/__init__.py", line 346, in loads return _default_decoder.decode(s) File "/usr/local/lib/python3.10/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/local/lib/python3.10/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

mduijm commented 2 years ago

when I run a simple version it seems to be ok ;):

docker run -it --env-file excludarr.env haijeploeg/excludarr:latest radarr exclude --help Usage: excludarr radarr exclude [OPTIONS]

Exclude movies in Radarr by deleting or not monitoring them

Options: -p, --provider PROVIDER Override the configured streaming providers. -l, --locale LOCALE Your locale e.g: en_US. -a, --action [delete|not-monitored] Change the status in Radarr. [required] -d, --delete-files Delete already downloaded files. -e, --exclusion Add an exclusion to prevent auto importing. -y, --yes Auto accept the confirmation notice. --progress Track the progress using a progressbar. --help Show this message and exit.

haijeploeg commented 2 years ago

Hmm that should have been fixed by adding some retry logic in doing the API call. It seems that this happens when Radarr and Sonarr are busy doing tasks and therefor returning invalid information.

Can you retry the command a few times and report back if it started to work? Maybe I can add some random waiting time in between the retries.

mduijm commented 2 years ago

sorry missed the reply. Will test and come back to you.

mduijm commented 2 years ago

I ran it just now and I got a nice reply ;) working, thanks.