[GH-ISSUE #16] Youtube collection folder not found #11

Closed
opened 2026-03-23 20:32:53 +00:00 by mirror · 2 comments
Owner

Originally created by @fistwho on GitHub (Oct 16, 2023).
Original GitHub issue: https://github.com/tubearchivist/tubearchivist-jf/issues/16

Hi people

first of all thanks for the TA Companion for Jellyfin. So far, the setup has also worked well. However, I always get an error when importing. No matter if Auto Trigger or Manual.

The error message says: youtube collection folder not found

I went exactly according to the instructions. Youtube folder was included in Jellyfin as Read Only. In Jellyfin it also finds the folder and shows it to me after a scan as well.

Here is the complete error message and the Docker Compose

 * Serving Flask app 'server'
 * Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on all addresses (0.0.0.0)
 * Running on http://127.0.0.1:8001
 * Running on http://10.10.10.20:8001
Press CTRL+C to quit
[connection] verified jellyfin connection
[connection] verified tube archivist connection
[2023-10-16 10:00:32,847] ERROR in app: Exception on / [POST]
Traceback (most recent call last):
  File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 2190, in wsgi_app
    response = self.full_dispatch_request()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1486, in full_dispatch_request
    rv = self.handle_user_exception(e)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1484, in full_dispatch_request
    rv = self.dispatch_request()
         ^^^^^^^^^^^^^^^^^^^^^^^
  File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1469, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/app/server.py", line 14, in home
    run_refresh()
  File "/app/main.py", line 14, in main
    library.validate_series()
  File "/app/src/series.py", line 33, in validate_series
    collection_id: str = self._get_collection()
                         ^^^^^^^^^^^^^^^^^^^^^^
  File "/app/src/series.py", line 60, in _get_collection
    raise ValueError("youtube collection folder not found")
ValueError: youtube collection folder not found
10.10.10.26 - - [16/Oct/2023 10:00:32] "POST / HTTP/1.1" 500 -

version: '3.5'

services:
  tubearchivist:
    container_name: tubearchivist
    restart: unless-stopped
    image: bbilly1/tubearchivist
    volumes:
      - /home/user/media/youtube:/youtube
      - /home/user/downloads/tacache:/cache
    environment:
      - ES_URL=http://archivist-es:9200     # needs protocol e.g. http and port
      - REDIS_HOST=archivist-redis          # don't add protocol
      - HOST_UID=1000
      - HOST_GID=1000
      - TA_HOST=ta.xxx.com                   # set your host name
      - TA_USERNAME=xxxxxxxxxxx                    # your initial TA credentials
      - TA_PASSWORD=xxxxxxxxxx                # your initial TA credentials
      - ELASTIC_PASSWORD=peP*************5  # set password for Elasticsearch
      - TZ=Europe/Berlin                    # set your time zone
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
      interval: 2m
      timeout: 10s
      retries: 3
      start_period: 30s
    networks:
      - containerbridge
    depends_on:
      - archivist-es
      - archivist-redis
  archivist-redis:
    image: redis/redis-stack-server
    container_name: archivist-redis
    restart: unless-stopped
    volumes:
      - redis:/data
    networks:
      - containerbridge
    depends_on:
      - archivist-es
  archivist-es:
    image: bbilly1/tubearchivist-es         # only for amd64, or use official es 8.9.0
    container_name: archivist-es
    restart: unless-stopped
    environment:
      - "ELASTIC_PASSWORD=peP*************5"       # matching Elasticsearch password
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - "xpack.security.enabled=true"
      - "discovery.type=single-node"
      - "path.repo=/usr/share/elasticsearch/data/snapshot"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - es:/usr/share/elasticsearch/data    # check for permission error when using bind mount, see readme
    networks:
      - containerbridge
  tubearchivist-jf:
    image: bbilly1/tubearchivist-jf
    container_name: tubearchivist-jf
    environment:
      - TA_URL=http://tubearchivist:8000
      - TA_TOKEN=087*******************************************e6d
      - JF_URL=http://jellyfin:8096
      - JF_TOKEN=d8***************************9a
    volumes:
      - /home/user/media/youtube:/youtube  # matching youtube volume as in Tube Archivist
    networks:
      - containerbridge

volumes:
  redis:
  es:

networks:
  containerbridge:
    name: container-bridge
    external: true

In TA I only subscribed to one playlist and downloaded it.

root@user /home/user/media/youtube # ls
UC1w6pNGiiLdZgyNpXUnA4Zw

root@user /home/user/media/youtube # cd UC1w6pNGiiLdZgyNpXUnA4Zw/
root@user /home/user/media/youtube/UC1w6pNGiiLdZgyNpXUnA4Zw # ls
3lQVNNEtd98.de.vtt  CA4HJv-KAKo.en.vtt  eKsOlqTcM0U.de.vtt  hA807Y7l26A.en.vtt  mABgkC8juSU.mp4     TKYoNhRPpWk.de.vtt  VW2I6P45JhU.en.vtt  WwlmenZSQtY.mp4
3lQVNNEtd98.en.vtt  CA4HJv-KAKo.mp4     eKsOlqTcM0U.en.vtt  hA807Y7l26A.mp4     maS6AWEZZoM.de.vtt  TKYoNhRPpWk.en.vtt  VW2I6P45JhU.mp4
3lQVNNEtd98.mp4     DRGfOXzC_KE.en.vtt  eKsOlqTcM0U.mp4     HWHv6un3YaM.de.vtt  maS6AWEZZoM.en.vtt  TKYoNhRPpWk.mp4     woZfMl2JN0k.de.vtt
B18zA10GOAg.de.vtt  DRGfOXzC_KE.mp4     _gLtBEoUpZI.de.vtt  HWHv6un3YaM.en.vtt  maS6AWEZZoM.mp4     Tp-JCpi-0Gs.de.vtt  woZfMl2JN0k.en.vtt
B18zA10GOAg.en.vtt  ebqOkoqr6ZQ.de.vtt  _gLtBEoUpZI.en.vtt  HWHv6un3YaM.mp4     tgchMlNOsHU.de.vtt  Tp-JCpi-0Gs.en.vtt  woZfMl2JN0k.mp4
B18zA10GOAg.mp4     ebqOkoqr6ZQ.en.vtt  _gLtBEoUpZI.mp4     mABgkC8juSU.de.vtt  tgchMlNOsHU.en.vtt  Tp-JCpi-0Gs.mp4     WwlmenZSQtY.de.vtt
CA4HJv-KAKo.de.vtt  ebqOkoqr6ZQ.mp4     hA807Y7l26A.de.vtt  mABgkC8juSU.en.vtt  tgchMlNOsHU.mp4     VW2I6P45JhU.de.vtt  WwlmenZSQtY.en.vtt

root@user /home/user/media/youtube/UC1w6pNGiiLdZgyNpXUnA4Zw #

Does anyone have any idea what I'm doing wrong?

Thank you very much <3

Originally created by @fistwho on GitHub (Oct 16, 2023). Original GitHub issue: https://github.com/tubearchivist/tubearchivist-jf/issues/16 Hi people first of all thanks for the TA Companion for Jellyfin. So far, the setup has also worked well. However, I always get an error when importing. No matter if Auto Trigger or Manual. The error message says: youtube collection folder not found I went exactly according to the instructions. Youtube folder was included in Jellyfin as Read Only. In Jellyfin it also finds the folder and shows it to me after a scan as well. Here is the complete error message and the Docker Compose ``` * Serving Flask app 'server' * Debug mode: off WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Running on all addresses (0.0.0.0) * Running on http://127.0.0.1:8001 * Running on http://10.10.10.20:8001 Press CTRL+C to quit [connection] verified jellyfin connection [connection] verified tube archivist connection [2023-10-16 10:00:32,847] ERROR in app: Exception on / [POST] Traceback (most recent call last): File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 2190, in wsgi_app response = self.full_dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1486, in full_dispatch_request rv = self.handle_user_exception(e) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1484, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/root/.local/lib/python3.11/site-packages/flask/app.py", line 1469, in dispatch_request return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/server.py", line 14, in home run_refresh() File "/app/main.py", line 14, in main library.validate_series() File "/app/src/series.py", line 33, in validate_series collection_id: str = self._get_collection() ^^^^^^^^^^^^^^^^^^^^^^ File "/app/src/series.py", line 60, in _get_collection raise ValueError("youtube collection folder not found") ValueError: youtube collection folder not found 10.10.10.26 - - [16/Oct/2023 10:00:32] "POST / HTTP/1.1" 500 - ``` ``` version: '3.5' services: tubearchivist: container_name: tubearchivist restart: unless-stopped image: bbilly1/tubearchivist volumes: - /home/user/media/youtube:/youtube - /home/user/downloads/tacache:/cache environment: - ES_URL=http://archivist-es:9200 # needs protocol e.g. http and port - REDIS_HOST=archivist-redis # don't add protocol - HOST_UID=1000 - HOST_GID=1000 - TA_HOST=ta.xxx.com # set your host name - TA_USERNAME=xxxxxxxxxxx # your initial TA credentials - TA_PASSWORD=xxxxxxxxxx # your initial TA credentials - ELASTIC_PASSWORD=peP*************5 # set password for Elasticsearch - TZ=Europe/Berlin # set your time zone healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8000/health"] interval: 2m timeout: 10s retries: 3 start_period: 30s networks: - containerbridge depends_on: - archivist-es - archivist-redis archivist-redis: image: redis/redis-stack-server container_name: archivist-redis restart: unless-stopped volumes: - redis:/data networks: - containerbridge depends_on: - archivist-es archivist-es: image: bbilly1/tubearchivist-es # only for amd64, or use official es 8.9.0 container_name: archivist-es restart: unless-stopped environment: - "ELASTIC_PASSWORD=peP*************5" # matching Elasticsearch password - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - "xpack.security.enabled=true" - "discovery.type=single-node" - "path.repo=/usr/share/elasticsearch/data/snapshot" ulimits: memlock: soft: -1 hard: -1 volumes: - es:/usr/share/elasticsearch/data # check for permission error when using bind mount, see readme networks: - containerbridge tubearchivist-jf: image: bbilly1/tubearchivist-jf container_name: tubearchivist-jf environment: - TA_URL=http://tubearchivist:8000 - TA_TOKEN=087*******************************************e6d - JF_URL=http://jellyfin:8096 - JF_TOKEN=d8***************************9a volumes: - /home/user/media/youtube:/youtube # matching youtube volume as in Tube Archivist networks: - containerbridge volumes: redis: es: networks: containerbridge: name: container-bridge external: true ``` In TA I only subscribed to one playlist and downloaded it. ``` root@user /home/user/media/youtube # ls UC1w6pNGiiLdZgyNpXUnA4Zw root@user /home/user/media/youtube # cd UC1w6pNGiiLdZgyNpXUnA4Zw/ root@user /home/user/media/youtube/UC1w6pNGiiLdZgyNpXUnA4Zw # ls 3lQVNNEtd98.de.vtt CA4HJv-KAKo.en.vtt eKsOlqTcM0U.de.vtt hA807Y7l26A.en.vtt mABgkC8juSU.mp4 TKYoNhRPpWk.de.vtt VW2I6P45JhU.en.vtt WwlmenZSQtY.mp4 3lQVNNEtd98.en.vtt CA4HJv-KAKo.mp4 eKsOlqTcM0U.en.vtt hA807Y7l26A.mp4 maS6AWEZZoM.de.vtt TKYoNhRPpWk.en.vtt VW2I6P45JhU.mp4 3lQVNNEtd98.mp4 DRGfOXzC_KE.en.vtt eKsOlqTcM0U.mp4 HWHv6un3YaM.de.vtt maS6AWEZZoM.en.vtt TKYoNhRPpWk.mp4 woZfMl2JN0k.de.vtt B18zA10GOAg.de.vtt DRGfOXzC_KE.mp4 _gLtBEoUpZI.de.vtt HWHv6un3YaM.en.vtt maS6AWEZZoM.mp4 Tp-JCpi-0Gs.de.vtt woZfMl2JN0k.en.vtt B18zA10GOAg.en.vtt ebqOkoqr6ZQ.de.vtt _gLtBEoUpZI.en.vtt HWHv6un3YaM.mp4 tgchMlNOsHU.de.vtt Tp-JCpi-0Gs.en.vtt woZfMl2JN0k.mp4 B18zA10GOAg.mp4 ebqOkoqr6ZQ.en.vtt _gLtBEoUpZI.mp4 mABgkC8juSU.de.vtt tgchMlNOsHU.en.vtt Tp-JCpi-0Gs.mp4 WwlmenZSQtY.de.vtt CA4HJv-KAKo.de.vtt ebqOkoqr6ZQ.mp4 hA807Y7l26A.de.vtt mABgkC8juSU.en.vtt tgchMlNOsHU.mp4 VW2I6P45JhU.de.vtt WwlmenZSQtY.en.vtt root@user /home/user/media/youtube/UC1w6pNGiiLdZgyNpXUnA4Zw # ``` Does anyone have any idea what I'm doing wrong? Thank you very much <3
mirror 2026-03-23 20:32:53 +00:00
  • closed this issue
  • added the
    question
    label
Author
Owner

@bbilly1 commented on GitHub (Oct 17, 2023):

How did you call your collection in JF? Make sure it's called YouTube as described here: https://github.com/tubearchivist/tubearchivist-jf/blob/master/README.md?plain=1#L36

<!-- gh-comment-id:1766366919 --> @bbilly1 commented on GitHub (Oct 17, 2023): How did you call your collection in JF? Make sure it's called `YouTube` as described here: https://github.com/tubearchivist/tubearchivist-jf/blob/master/README.md?plain=1#L36
Author
Owner

@fistwho commented on GitHub (Oct 17, 2023):

Hey bbilly1

I just tried to analyze the problem again. It is indeed due to the library. I had called this YouTube Exclusive, it must be having problems with that. I renamed it to YouTube and now it works.

Thank you anyway

<!-- gh-comment-id:1766421098 --> @fistwho commented on GitHub (Oct 17, 2023): Hey bbilly1 I just tried to analyze the problem again. It is indeed due to the library. I had called this YouTube Exclusive, it must be having problems with that. I renamed it to YouTube and now it works. Thank you anyway
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
tubearchivist/tubearchivist-jf#11
No description provided.