wayneclub / Subtitle-Downloader

Auto download subtitles from streaming services, such as Apple TV+, CatchPlay, Crunchyroll, Disney+, FridayVideo, HBO GO Asia, iQIYI, iTunes, KKTV, LINE TV, meWATCH, MyVideo, NowE, NowPlayer, Viki, Viu, WeTV, YouTube, and etc.
MIT License
275 stars 60 forks source link

Failed to download subtitles from Disney Plus #88

Open rDamascena opened 2 months ago

rDamascena commented 2 months ago

What is the solution to the problem below?

python subtitle_downloader.py https://www.disneyplus.com/browse/entity-75c90eca-8969-4edb-ac1a-7165cff2671c

Successfully logged in. Welcome **********
Traceback (most recent call last):
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 151, in <module>
    main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 140, in main
    service['class'](args).main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 361, in main
    self.movie_subtitle()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 45, in movie_subtitle
    title = data['text']['title']['full']['program']['default']['content'].strip(
TypeError: 'NoneType' object is not subscriptable
frankwu8765 commented 2 months ago

我也遇到完全一样的问题!不知道是不是因为disney登录之后,还需要选择相应的用户?而一般用户都设置了自己的PIN码,所以程序没有真正的登录进去!这样的话,是不是用cookie的方式更好一些?

wayneclub commented 1 month ago

What is the solution to the problem below?

python subtitle_downloader.py https://www.disneyplus.com/browse/entity-75c90eca-8969-4edb-ac1a-7165cff2671c

Successfully logged in. Welcome **********
Traceback (most recent call last):
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 151, in <module>
    main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 140, in main
    service['class'](args).main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 361, in main
    self.movie_subtitle()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 45, in movie_subtitle
    title = data['text']['title']['full']['program']['default']['content'].strip(
TypeError: 'NoneType' object is not subscriptable

Disney Update new API. Fixed. Please try again

rDamascena commented 1 month ago

What is the solution to the problem below?

python subtitle_downloader.py https://www.disneyplus.com/browse/entity-75c90eca-8969-4edb-ac1a-7165cff2671c

Successfully logged in. Welcome **********
Traceback (most recent call last):
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 151, in <module>
    main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 140, in main
    service['class'](args).main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 361, in main
    self.movie_subtitle()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 45, in movie_subtitle
    title = data['text']['title']['full']['program']['default']['content'].strip(
TypeError: 'NoneType' object is not subscriptable

Disney Update new API. Fixed. Please try again

I tried and the error persists!

python subtitle_downloader.py "https://www.disneyplus.com/browse/entity-d90a933e-3b20-45a3-9bcf-b07e631a603f" --season 1

Successfully logged in. Welcome *******
Traceback (most recent call last):
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 151, in <module>
    main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\subtitle_downloader.py", line 140, in main
    service['class'](args).main()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 370, in main
    self.movie_subtitle()
  File "C:\Users\Adriana\Documents\Subtitle-Downloader-main\services\disneyplus\disneyplus.py", line 46, in movie_subtitle
    title = data['text']['title']['full']['program']['default']['content'].strip(
TypeError: 'NoneType' object is not subscriptable
wayneclub commented 1 month ago

https://www.disneyplus.com/browse/entity-75c90eca-8969-4edb-ac1a-7165cff2671c

I mean I had updated the project need to redownload and try again.

achatschnecke commented 1 month ago

https://www.disneyplus.com/browse/entity-75c90eca-8969-4edb-ac1a-7165cff2671c

I mean I had updated the project need to redownload and try again.

It is working for movies only. If I try to download TV series the json-response seems to be empty.

{'data': {'DmcVideoBundle': {'containers': [], 'extras': {'meta': {'hits': 0, 'offset': 0, 'page_size': 50, 'hasMore': False}, 'videos': []}, 'promoLabels': None, 'related': {'experimentToken': '', 'items': [], 'meta': {'hits': 0, 'offset': 0, 'page_size': 8, 'hasMore': False}}, 'video': None}}}

Edit: The recognition for difference between movies and TV shows needs to be updated. I solved it for me by forcing to use the "series_subtitle"-method at the end of the ./Subtitle-Downloader/services/disneyplus/disneyplus.py