Commit Graph

362 Commits (b46696bdc8f7a4d19b6a8205558cbcbe4168c3cf)

Author SHA1 Message Date
xypwn f8fb3b8a78
[SouthparkDe] Support for English URLs
Allow downloading English South Park episodes from the southpark.de
pukkandan 036fcf3aa1 Redirect channel home to /video
pukkandan 434406a982 Cleanup YoutubeTabIE _VALID_URL regex
pukkandan 386e1dd908 Better implementation of YoutubeSearchURLIE
pukkandan 7bd4a9b611 Added RDMM back
Eg: https://www.youtube.com/watch?v=MuAGGZNfUkU&list=RDMM
pukkandan ef2f3c7f58 Minor fixes
pukkandan a0566bbf5c Updated to release 2020.11.21.1
pukkandan 3462ffa892 Implemented all Youtube Feeds (ytfav, ytwatchlater, ytsubs, ythistory, ytrec) and SearchURL
pukkandan d3260f40cb Revert changes to vlive
pukkandan 097f1663a9 Detect embedded bitchute videos
pukkandan 8bdd16b499 Merge 'ytdl-org/youtube-dl/master' release 2020.11.19
Old Extractors left behind:
	VLivePlaylistIE
	YoutubeSearchURLIE
	YoutubeShowIE
	YoutubeFavouritesIE

If removing old extractors, make corresponding changes in
	docs/supportedsites.md
	youtube_dlc/extractor/extractors.py

Not merged:
	.github/ISSUE_TEMPLATE/1_broken_site.md
	.github/ISSUE_TEMPLATE/2_site_support_request.md
	.github/ISSUE_TEMPLATE/3_site_feature_request.md
	.github/ISSUE_TEMPLATE/4_bug_report.md
	.github/ISSUE_TEMPLATE/5_feature_request.md
	test/test_all_urls.py
	youtube_dlc/version.py
	Changelog
Diego Fernando Rodríguez Varón d71eb83b05 Extract embedded youtube and twitter videos
Tom-Oliver Heidel 228385340e
Merge pull request from pukkandan/break-on-existing
Stop download after encountering video in archive
Kyu Yeun Kim d02f12107f [Vlive] Fix playlist handling when downloading a channel
lorpus d9c2b0a6de [bitwave.tv] fix build
lorpus 2b547dd782 [bitwave.tv] new extractor
pukkandan ec57f903c9 Don't try to delete file if it doesn't exist
Matthew 9da76d30de code consistency
pukkandan 958804ad4e Ensure all streams are copied when using ffmpeg
pukkandan 55faba7ed7 Fix for os.rename error when embedding thumbnail to video in a different drive
Matthew 0366ae8756 Fix search to not depend on index position for videoRenderer and token items.
Diego Fernando Rodríguez Varón a2044d57ca Merge branch 'master' of https://github.com/blackjack4494/yt-dlc into fix-tmz
pukkandan ea6e0c2b0d Add --break-on-existing by @gergesh
Authored-by: Yoav Shai <gergesh@gmail.com>
pukkandan fe5caa2a7c Handle IndexError
pukkandan 9a68de1217 Pre-check video IDs in the archive before downloading
Unknown 5e6cdcecdd flake8 yt py2 fix
Tom-Oliver Heidel c297a6c661
[skip travis]
Unknown 6bd79800c3 [youtube] python2 fix
proposed fix by awei78
nao20010128nao a1d6041497 [instagram] fix thumbnail URL extraction
Tom-Oliver Heidel b28e751688
[skip travis]
Tom-Oliver Heidel 7ee5015a34
Merge pull request from RobinD42/fix-subtitle-fallback
fall-back to the old way to fetch subtitles, if needed
Tom-Oliver Heidel 00c38ef28d
Merge pull request from wlritchi/youtube-playlist-polymer
RFC: youtube: Polymer UI and JSON endpoints for playlists
Tom-Oliver Heidel 34861f1c96
Merge pull request from nsapa/fix_subtitle
Fix issue triggered by tubeup
Unknown 104bfdd24d ytsearchurl 5 pages for around 100 results
Luc Ritchie 73ac856785 [youtube] max_pages=5 for search, unlimited for everything else
Also drop a few leftover methods in search that are no longer used.
Tom-Oliver Heidel d91fdaff03
Merge pull request from rigstot/thisvid
implement ThisVid extractor
Tom-Oliver Heidel c54f4aada5
Merge branch 'master' into youtube-playlist-polymer
Unknown 0f8566e90b manually set limit for youtubesearchurl
Tom-Oliver Heidel 0e0cffb8fe
Merge pull request from ZenulAbidin/master
Fix  YoutubePlaylistsIE
rigstot d7aec208f2 implement ThisVid extractor
deobfuscates the video URL using a reverse engineered version of KVS
player's algorithm. This was tested against version 4.0.4, 5.0.1,
5.1.1.4 and 5.2.0.4 of the player and a warning will be issued if the
major version changes.
Tom-Oliver Heidel 69e3c6df5c
Merge pull request from pukkandan/no-http-header
Fix external downloader when there is no http_header
pukkandan 002ea8fe17 Fix external downloader when there is no http_header
Roman Karwacik 8f109ad4ad
[zoom] Fix url parsing for url's containing /share/ and dots
Luc Ritchie 9833e7a015 fix: youtube: Polymer UI and JSON endpoints for playlists
We already had a few copies of Polymer-style pagination handling logic
for certain circumstances, but now we're forced into using it for all
playlists since we can no longer disable Polymer. Refactor the logic to
move it to the parent class for all entry lists (including e.g. search
results, feeds, and list of playlists), and generify a bit to cover the
child classes' use cases.
Robin Dunn 142f2c8e99 fall-back to the old way to fetch subtitles, if needed
Ali Sherief 876f1c17ff
Fix YoutubePlaylistsIE
nixxo 5867a16789 [rcs] fixed embeds detection, fixed tests
nixxo 8924ddc3ee [gedi] fixed Gedi regex
nixxo 595188ec71 [gedi] fixed Embeds tests, again
nixxo 6c1c3e5b85 [gedi] fixed Embeds test
nixxo 902784a2a9 [gedi] added huffingtonpost, added embeds
Diego Fernando Rodríguez Varón fff5071112 [TMZ] Add support for new page structure using JSON-LD
WolfganP 85da4055c0
ITV BTCC new pages' URL update, fix on items count
Fixed playlist_count as the variable was renamed
WolfganP 6857df609b
ITV BTCC new pages' URL update (articles instead of races)
Not my changes, but from @franhp that didn't get merged on yt-dl on time
It supports BTCC new pages' schema from 2019 an on (/articles/ instead of /races/)
Nicolas SAPA 8263104fe4 [youtube] Fix 'liveChatReplayContinuationData' missing 'continuation' key
live_chat_continuation['continuations'][0]['liveChatReplayContinuationData']['continuation'] can not exist.
So catch the KeyError.

Traceback:
$ tubeup 'https://youtube.com/watch?v=JyE9OF03cao'
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dlc version 2020.10.25
[debug] Python version 3.7.3 (CPython) - Linux-5.8.0-0.bpo.2-amd64-x86_64-with-debian-10.6
[debug] exe versions: ffmpeg 3.3.9, ffprobe 3.3.9
[debug] Proxy map: {}
There are no annotations to write.
[download] 452.59KiB at 615.35KiB/s (00:01)ERROR: 'liveChatReplayContinuationData'
Traceback (most recent call last):
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 846, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 901, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1696, in process_video_result
    self.process_info(new_info)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1894, in process_info
    dl(sub_filename, sub_info, subtitle=True)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1866, in dl
    return fd.download(name, info, subtitle)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/downloader/common.py", line 375, in download
    return self.real_download(filename, info_dict)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/downloader/youtube_live_chat.py", line 85, in real_download
    continuation_id = live_chat_continuation['continuations'][0]['liveChatReplayContinuationData']['continuation']
KeyError: 'liveChatReplayContinuationData'
Nicolas SAPA b860e4cc2f [common] Make sure self.params.get('sleep_interval_subtitles') is int
This can happen if another software is using yt-dlc'API (ie: tubeup).
The stack trace would be:
$ tubeup 'https://youtube.com/watch?v=JyE9OF03cao'
[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8
[debug] youtube-dlc version 2020.10.25
[debug] Python version 3.7.3 (CPython) - Linux-5.8.0-0.bpo.2-amd64-x86_64-with-debian-10.6
[debug] exe versions: ffmpeg 3.3.9, ffprobe 3.3.9
[debug] Proxy map: {}
There are no annotations to write.
ERROR: '>' not supported between instances of 'NoneType' and 'int'
Traceback (most recent call last):
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 846, in extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 901, in process_ie_result
    return self.process_video_result(ie_result, download=download)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1696, in process_video_result
    self.process_info(new_info)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1894, in process_info
    dl(sub_filename, sub_info, subtitle=True)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/YoutubeDL.py", line 1866, in dl
    return fd.download(name, info, subtitle)
  File "/mnt/data2/Backup/Wiki/.local/lib/python3.7/site-packages/youtube_dlc/downloader/common.py", line 367, in download
    if self.params.get('sleep_interval_subtitles') > 0:
TypeError: '>' not supported between instances of 'NoneType' and 'int'
The Hatsune Daishi 987d2e079a
[instagram] Fix extractor
nixxo 8abd647c59 [mailru] removed escaped braces, use urljoin, added tests
Tom-Oliver Heidel adb118da26
Merge pull request from insaneracist/youtube-music-playlist
[youtube] fix: Youtube Music playlists
Tom-Oliver Heidel 06a8be981b
Merge pull request from nixxo/la7-proto-fix
[la7] fix missing protocol
Tom-Oliver Heidel f406ab6a14
Merge pull request from insaneracist/youtube-mix-fix
[youtube] fix: mix playlist title
Tom-Oliver Heidel 206de9b233
Merge pull request from exwm/vlive-fix
[vlive] fix extractor for revamped website
Tom-Oliver Heidel 123049d1ce
Merge pull request from pukkandan/no-embed-livechat
Don't try to embed/convert json subtitles generated by youtube livechat
Tom-Oliver Heidel f8ddb38977
Merge pull request from insaneracist/ytdl-pr/24751-zoomus
[zoom] new extractor
pukkandan 503d4a44f6 Don't try to embed/convert json subtitles generated by youtube livechat
insaneracist 366a7a4753 [zoom] rename extractor from zoomus
insaneracist 7f4f0b21c2 [youtube] added Youtube Music channel info
insaneracist 659ddd7f70 [youtube] fix: Youtube Music playlists
nixxo ab36800b1f [la7] fix missing protocol
exwm 9c8bc84fd2 [vlive] add: improved video extractor errors
exwm c434e9f504 [vlive] fix: missing expected types for try_get
exwm be5d6c213c [vlive] refactor: delete dead function code
insaneracist 15f6397c19 [youtube] get mix playlist title from ytInitialData
Tom-Oliver Heidel 7166f47b18
Merge pull request from insaneracist/youtube-mix-fix
[youtube] fix: extract mix playlist ids from ytInitialData ()
Tom-Oliver Heidel 8934f61717
Merge pull request from peet1993/master
[Youtube] Fixed problem with new youtube player
Tom-Oliver Heidel 4481cfb570
Merge pull request from nixxo/skyitalia
[skyitalia] added geoblock msg
Roman Sebastian Karwacik b11a88fc24 [zoomus] Adjusted url regex, now allowing for arbitrary long ids, dont throw warning if password field not found
Roman Sebastian Karwacik aa13f124a5 [zoomus] Adjusted referer header, fixed formating for flake8
Roman Sebastian Karwacik 81acad1279 [zoomus] Added support for password protected videos
Roman Sebastian Karwacik abd273e17b [zoomus] coding conventions
Roman Sebastian Karwacik 55cd2999ed [zoomus] Cleanup
Roman Sebastian Karwacik ef6be42014 [zoomus] Allow for more urls
Roman Sebastian Karwacik 3f0852e35f [zoomus] Add new extractor
exwm 130599af94 [vlive] fix: raise login required error on vlive+
exwm 73cc1b9125 [vlive] fix: live video extractor
* use live video info endpoint from v3 api
exwm 3417362556 [vlive] fix: vod logic wrongly used for live video
exwm 8ba3ad0a48 [vlive] fix: fetching live video not yet uploaded for replay
exwm 1923b146b3 [vlive] add: support new channel url format
exwm 5dcfd2508a [vlive] add: support video post urls
exwm 0536e60b48 [vlive] fix: extractor tests for VODs
insaneracist 5c15c1a0d7 python2: don't use str, use compat_str
Diego Fernando Rodríguez Varón 60351178a5 [TMZ] Fix TMZ.com extractor
Unknown 31108ce946 [core] sleep-subtitles fix
Unknown ae306df7e0 [viki] new way of obtaining subtitles.
nixxo e61f360157 [skyitalia] added geoblock msg
insaneracist 712799bd30 Merge branch 'master' into youtube-mix-fix
Unknown 7fb5f2f29d [skip travis] templates and urls
Tom-Oliver Heidel 200959ec76
Merge pull request from merval/merval/comcast_sso_fix
Added Comcast_SSO fix
Tom-Oliver Heidel 4f51913680
Merge pull request from TobiX/fix-netzkino
[Netzkino] Only use video id to find metadata
Tom-Oliver Heidel b8c6e56725
Merge pull request from insaneracist/youtube-music-metadata-fix
[youtube] fix: extract artist metadata from ytInitialData ()
Tom-Oliver Heidel 2c01ee48e0
Merge pull request from insaneracist/newgrounds-fix
[newgrounds] fix: video download
Tom-Oliver Heidel 0ae154c4b4
Merge pull request from B0pol/nitter
[nitter] Add new extractor
Tom-Oliver Heidel e2d5e9a361
Merge pull request from merval/merval/brightcove_drm
Added DRM logic to brightcove
Tom-Oliver Heidel 12ae240c36
Merge pull request from nixxo/patch-1
[mtv] Fix a missing match_id
Tom-Oliver Heidel 76c2df5f0a
Merge pull request from nixxo/skyitalia
[skyitalia] Add new extractor
Tom-Oliver Heidel 90c3f039e2
Merge pull request from insaneracist/xtube-fix
[xtube] fix extractor ()
Unknown fa57af1ef3 flake8. added sha256 check to updater.
Unknown 9f448fcb26 [core/yt_live_chat] live_chat is back. dl() new parameter
Peter Oettig 59c5fa91c1 Fixed problem with new youtube player, leading to "Unable to extract video data".
Tobias Gruetzmacher 7db1d2a69e Only use video id to find metadata
Dan Walker 3086aa194f Added Comcast_SSO fix
This fix had been proposed on yt-dl for a lengthy period of time but was never merged. It has been thoroughly tested but a large section of the community.
insaneracist 5b0a6a8010 [youtube] fix: extract mix playlist ids from ytInitialData ()
insaneracist 9322f1162d [youtube] fix: extract artist metadata from ytInitialData ()
nixxo 920ad13673 [skyitalia] fixed coding conventions
nixxo 508649e6f5 [rcs] fixed coding conventions
bopol bb8a73a0e2 [nitter] Add new extractor
Unknown 4932ba4aec [yt_live_chat] deactivate for now.
Unknown 0704d2224b [core] be able to hand over id and title using url_result
insaneracist 139e10ad98 [newgrounds] fix: video download
insaneracist 576d233fe6 [xtube] fix extractor ()
nixxo a85e131b48 [rcs] Add new extractor
nixxo 165ce9f773 [gedi] removed unused tests, fixed extractor name
nixxo 81a20463a4 [skyitalia] moved token
nixxo 0b72c2bc31 [skyitalia] removed arbitrary parameter
nixxo c3c18d7b8a [skyitalia] Add new extractor
insaneracist ccec6955f3 [bandcamp] fix failing test. remove subclass hack
nixxo 6c6ee4905f [mtv] proposed fix
Tom-Oliver Heidel 1808b9e28c
Merge pull request from amigatomte/patch-1
Update to reflect website changes.
Unknown 079a941282 [mtv] add match_id reminder
Unknown 3467b3e28f [skip travis][bandcamp] fix minor typo in tests
Tom-Oliver Heidel 565e61d488
Merge pull request from insaneracist/bandcamp-fix
[bandcamp] restore album downloads
insaneracist 48aac9fc86 [bandcamp] restore album downloads
flake8 conform
Peter Oettig 67b19799a5 Fixed problem with JS player URL
The JS player URL could not be found anymore, possibly because of a change on Youtubes side.
Unknown 6f8557ec4d [skip travis] add note to remove tvland.
amigatomte fb9c36c45f
Update to reflect website changes.
Dan Walker 87ab4fb11a Added DRM logic
In the event when there are no available sources due to DRM controlled sources, return a DRM error and don't proceed with trying.

 reports that an ExtractorError "No video formats found". Which is true, because the formats list is empty, however it's empty because they are all locked. This provides a more informative message to the end-user.

# TESTING
Tried the URL provided in  and confirmed a DRM messages is returned.
GreyAlien502 61e76c1e5f
simplify second page fetch
Co-authored-by: Merval <merval@users.noreply.github.com>
nixxo d4ca287459 [gedi] fixed class name
nixxo a916af123c [gedi] Add new extractor
GreyAlien502 7bbc0bbce0 fix tiktok download
nixxo 5fec75c81c
[mtv] Fix a missing match_id
Fix a problem introduced in 320724f964 where is extracted the ID from the url with self._match_id but the problem is that ID is not always present in the url passed so the title should be extracted as proposed by the fix (and like is done in _real_extract (see line 337))
Unknown 8045ef7760 next release: 2020.10.26
Unknown fb2c9277bc [youtube] ultimate age gate fix
Unknown 4f5a0ad822 [tiktok] fallback url + cookie
Dan Walker 1666c2709f Fixed tiktok.py
The JSON formatting of the response changed, corrected.

#TESTING
Successfully downloaded and played a tiktok video
Unknown 6011cf1650 pypi c'mon.
Unknown 3d83f4723e bump.
Unknown 6c894ea191 [youtube/ytsearch] fix yt search feed + version update.
Unknown dd2d55f10d COMPLAINFREE
Unknown 3a6a581d94 Merge remote-tracking branch 'origin/master'