From 6aadce819b42e2c0daabc7625464994010e40e51 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 9 Oct 2020 14:41:45 +0000 Subject: patches/youtube-dl: fix bandcamp --- ...x-the-freeDownloadPage-JSON-lookup-and-us.patch | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 overlays/patches/youtube-dl/0004-bandcamp-fix-the-freeDownloadPage-JSON-lookup-and-us.patch (limited to 'overlays/patches/youtube-dl/0004-bandcamp-fix-the-freeDownloadPage-JSON-lookup-and-us.patch') diff --git a/overlays/patches/youtube-dl/0004-bandcamp-fix-the-freeDownloadPage-JSON-lookup-and-us.patch b/overlays/patches/youtube-dl/0004-bandcamp-fix-the-freeDownloadPage-JSON-lookup-and-us.patch new file mode 100644 index 000000000000..b5876a477009 --- /dev/null +++ b/overlays/patches/youtube-dl/0004-bandcamp-fix-the-freeDownloadPage-JSON-lookup-and-us.patch @@ -0,0 +1,34 @@ +From 848e97dc19218ed59e401fb34e7e2f1d2e40f9da Mon Sep 17 00:00:00 2001 +From: Gilles Pietri +Date: Sun, 27 Sep 2020 15:11:08 +0200 +Subject: [PATCH 4/8] [bandcamp] fix the freeDownloadPage JSON lookup, and use + the id from the URL to match the tracks + +From https://github.com/ytdl-org/youtube-dl/pull/26684. +--- + youtube_dl/extractor/bandcamp.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/youtube_dl/extractor/bandcamp.py b/youtube_dl/extractor/bandcamp.py +index f036a89eb..eccb867a0 100644 +--- a/youtube_dl/extractor/bandcamp.py ++++ b/youtube_dl/extractor/bandcamp.py +@@ -128,12 +128,12 @@ class BandcampIE(InfoExtractor): + release_date = unified_strdate(extract('album_release_date')) + + download_link = self._search_regex( +- r'freeDownloadPage\s*:\s*(["\'])(?P(?:(?!\1).)+)\1', webpage, ++ r'freeDownloadPage(?:["\']|"):\s*(["\']|")(?P(?:(?!\1).)+)\1', webpage, + 'download link', default=None, group='url') + if download_link: + track_id = self._search_regex( +- r'(?ms)var TralbumData = .*?[{,]\s*id: (?P\d+),?$', +- webpage, 'track id') ++ r'\?id=(?P\d+)&', ++ download_link, 'track id') + + download_webpage = self._download_webpage( + download_link, track_id, 'Downloading free downloads page') +-- +2.27.0 + -- cgit 1.4.1