From d9d7cd0e85dc712461d9185db9df9d6c900a573b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rog=C3=A9rio=20Brito?= Date: Fri, 19 May 2017 03:21:44 -0300 Subject: [PATCH 1/1] New upstream version 2017.05.18.1 --- ChangeLog | 317 +++++++++++ Makefile | 2 +- README.md | 25 +- README.txt | 25 +- docs/supportedsites.md | 48 +- test/test_InfoExtractor.py | 315 ++++++++++- test/test_YoutubeDL.py | 4 +- test/test_download.py | 18 +- test/test_subtitles.py | 8 +- test/test_utils.py | 54 ++ test/test_youtube_chapters.py | 268 +++++++++ youtube-dl | Bin 1497486 -> 1535435 bytes youtube-dl.1 | 26 +- youtube-dl.bash-completion | 2 +- youtube-dl.fish | 7 +- youtube-dl.zsh | 2 +- youtube_dl/YoutubeDL.py | 26 +- youtube_dl/__init__.py | 1 + youtube_dl/compat.py | 2 +- youtube_dl/downloader/common.py | 34 +- youtube_dl/downloader/dash.py | 43 +- youtube_dl/downloader/external.py | 12 +- youtube_dl/downloader/f4m.py | 33 +- youtube_dl/downloader/fragment.py | 122 ++++- youtube_dl/downloader/hls.py | 51 +- youtube_dl/downloader/ism.py | 34 +- youtube_dl/downloader/rtmp.py | 2 +- youtube_dl/extractor/adn.py | 136 +++++ youtube_dl/extractor/adobepass.py | 69 ++- youtube_dl/extractor/adultswim.py | 281 ++++------ youtube_dl/extractor/aenetworks.py | 40 +- youtube_dl/extractor/afreecatv.py | 142 ++++- youtube_dl/extractor/airmozilla.py | 28 +- youtube_dl/extractor/aljazeera.py | 9 +- youtube_dl/extractor/allocine.py | 44 +- youtube_dl/extractor/amp.py | 26 +- youtube_dl/extractor/anvato.py | 66 ++- youtube_dl/extractor/appleconnect.py | 4 +- youtube_dl/extractor/appletrailers.py | 5 +- youtube_dl/extractor/archiveorg.py | 4 +- youtube_dl/extractor/arte.py | 5 +- youtube_dl/extractor/atresplayer.py | 2 +- youtube_dl/extractor/audioboom.py | 2 +- youtube_dl/extractor/azubu.py | 140 ----- youtube_dl/extractor/bandcamp.py | 12 +- youtube_dl/extractor/bbc.py | 10 +- youtube_dl/extractor/beeg.py | 2 +- youtube_dl/extractor/bilibili.py | 5 + youtube_dl/extractor/bleacherreport.py | 10 +- youtube_dl/extractor/br.py | 2 +- youtube_dl/extractor/brightcove.py | 111 +++- youtube_dl/extractor/canalc2.py | 5 +- youtube_dl/extractor/canalplus.py | 43 +- youtube_dl/extractor/canvas.py | 1 + youtube_dl/extractor/cbc.py | 6 +- youtube_dl/extractor/cbslocal.py | 4 +- youtube_dl/extractor/cda.py | 52 +- youtube_dl/extractor/ceskatelevize.py | 106 ++-- youtube_dl/extractor/chaturbate.py | 16 +- youtube_dl/extractor/clipfish.py | 2 +- youtube_dl/extractor/collegerama.py | 3 +- youtube_dl/extractor/common.py | 286 ++++++---- youtube_dl/extractor/condenast.py | 81 ++- youtube_dl/extractor/coub.py | 5 +- youtube_dl/extractor/crackle.py | 7 +- youtube_dl/extractor/crunchyroll.py | 12 +- youtube_dl/extractor/cspan.py | 15 + youtube_dl/extractor/curiositystream.py | 55 +- youtube_dl/extractor/cwtv.py | 7 +- youtube_dl/extractor/dailymail.py | 12 +- youtube_dl/extractor/dailymotion.py | 126 +++-- youtube_dl/extractor/democracynow.py | 3 +- youtube_dl/extractor/discoveryvr.py | 59 ++ youtube_dl/extractor/dotsub.py | 2 +- youtube_dl/extractor/douyutv.py | 86 ++- youtube_dl/extractor/drtv.py | 34 +- youtube_dl/extractor/extractors.py | 57 +- youtube_dl/extractor/foxsports.py | 9 +- youtube_dl/extractor/francetv.py | 218 +++----- youtube_dl/extractor/funimation.py | 273 ++++------ youtube_dl/extractor/funnyordie.py | 3 +- youtube_dl/extractor/gamespot.py | 3 +- youtube_dl/extractor/gdcvault.py | 15 +- youtube_dl/extractor/generic.py | 262 ++++++--- youtube_dl/extractor/go.py | 49 +- youtube_dl/extractor/go90.py | 126 +++++ youtube_dl/extractor/hbo.py | 16 +- youtube_dl/extractor/imdb.py | 5 +- youtube_dl/extractor/infoq.py | 4 +- youtube_dl/extractor/instagram.py | 8 +- youtube_dl/extractor/iqiyi.py | 26 +- youtube_dl/extractor/itv.py | 28 +- youtube_dl/extractor/kaltura.py | 27 +- youtube_dl/extractor/laola1tv.py | 97 +++- youtube_dl/extractor/leeco.py | 111 ++-- youtube_dl/extractor/lego.py | 2 +- youtube_dl/extractor/limelight.py | 53 +- youtube_dl/extractor/liveleak.py | 83 ++- youtube_dl/extractor/mediaset.py | 118 ++++ youtube_dl/extractor/medici.py | 70 +++ youtube_dl/extractor/mixcloud.py | 38 +- youtube_dl/extractor/myspace.py | 100 ++-- youtube_dl/extractor/nbc.py | 98 ++-- youtube_dl/extractor/nonktube.py | 33 ++ youtube_dl/extractor/noovo.py | 97 ++++ youtube_dl/extractor/nowness.py | 2 +- youtube_dl/extractor/npo.py | 11 +- youtube_dl/extractor/nrk.py | 25 +- youtube_dl/extractor/nuevo.py | 5 +- youtube_dl/extractor/odnoklassniki.py | 32 +- youtube_dl/extractor/openload.py | 73 ++- youtube_dl/extractor/orf.py | 109 ++-- youtube_dl/extractor/packtpub.py | 171 ++++++ youtube_dl/extractor/pbs.py | 31 +- youtube_dl/extractor/periscope.py | 7 +- youtube_dl/extractor/porn91.py | 32 +- youtube_dl/extractor/pornhub.py | 5 +- youtube_dl/extractor/r7.py | 3 +- youtube_dl/extractor/rai.py | 509 ++++++++++++------ youtube_dl/extractor/rbmaradio.py | 6 +- youtube_dl/extractor/rmcdecouverte.py | 26 +- youtube_dl/extractor/rtl2.py | 110 +++- youtube_dl/extractor/rudo.py | 2 +- youtube_dl/extractor/streamable.py | 6 +- youtube_dl/extractor/streamango.py | 64 +++ youtube_dl/extractor/ted.py | 2 +- youtube_dl/extractor/theplatform.py | 21 +- youtube_dl/extractor/thescene.py | 36 +- youtube_dl/extractor/thesun.py | 32 ++ youtube_dl/extractor/turner.py | 9 +- youtube_dl/extractor/tv2hu.py | 62 +++ youtube_dl/extractor/tv5mondeplus.py | 79 +++ youtube_dl/extractor/tvp.py | 3 +- youtube_dl/extractor/tvplay.py | 6 +- youtube_dl/extractor/tvplayer.py | 35 +- youtube_dl/extractor/udemy.py | 79 ++- youtube_dl/extractor/upskill.py | 176 ++++++ youtube_dl/extractor/vevo.py | 17 +- youtube_dl/extractor/vice.py | 154 ++++-- youtube_dl/extractor/viceland.py | 11 +- youtube_dl/extractor/videopress.py | 9 +- youtube_dl/extractor/vidio.py | 7 +- youtube_dl/extractor/vidzi.py | 11 +- youtube_dl/extractor/vier.py | 117 +++- youtube_dl/extractor/viewlift.py | 2 +- youtube_dl/extractor/viewster.py | 3 +- youtube_dl/extractor/vlive.py | 4 +- youtube_dl/extractor/vrt.py | 1 + youtube_dl/extractor/vrv.py | 212 ++++++++ youtube_dl/extractor/vshare.py | 38 ++ youtube_dl/extractor/washingtonpost.py | 6 + youtube_dl/extractor/wistia.py | 22 + youtube_dl/extractor/worldstarhiphop.py | 46 +- youtube_dl/extractor/wsj.py | 52 +- youtube_dl/extractor/xfileshare.py | 86 ++- youtube_dl/extractor/xtube.py | 23 +- youtube_dl/extractor/xvideos.py | 11 +- youtube_dl/extractor/yahoo.py | 2 +- youtube_dl/extractor/yandexmusic.py | 3 +- youtube_dl/extractor/youku.py | 8 +- youtube_dl/extractor/youtube.py | 363 ++++++++----- youtube_dl/extractor/zaq1.py | 101 ++++ youtube_dl/jsinterp.py | 38 +- youtube_dl/options.py | 17 +- youtube_dl/postprocessor/ffmpeg.py | 33 +- youtube_dl/postprocessor/metadatafromtitle.py | 6 +- youtube_dl/socks.py | 5 +- youtube_dl/utils.py | 215 +++++++- youtube_dl/version.py | 2 +- 169 files changed, 6639 insertions(+), 2448 deletions(-) create mode 100644 test/test_youtube_chapters.py create mode 100644 youtube_dl/extractor/adn.py delete mode 100644 youtube_dl/extractor/azubu.py create mode 100644 youtube_dl/extractor/discoveryvr.py create mode 100644 youtube_dl/extractor/go90.py create mode 100644 youtube_dl/extractor/mediaset.py create mode 100644 youtube_dl/extractor/medici.py create mode 100644 youtube_dl/extractor/nonktube.py create mode 100644 youtube_dl/extractor/noovo.py create mode 100644 youtube_dl/extractor/packtpub.py create mode 100644 youtube_dl/extractor/streamango.py create mode 100644 youtube_dl/extractor/thesun.py create mode 100644 youtube_dl/extractor/tv2hu.py create mode 100644 youtube_dl/extractor/tv5mondeplus.py create mode 100644 youtube_dl/extractor/upskill.py create mode 100644 youtube_dl/extractor/vrv.py create mode 100644 youtube_dl/extractor/vshare.py create mode 100644 youtube_dl/extractor/zaq1.py diff --git a/ChangeLog b/ChangeLog index 07725b1..1637876 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,320 @@ +version 2017.05.18.1 + +Core +* [jsinterp] Fix typo and cleanup regular expressions (#13134) + + +version 2017.05.18 + +Core ++ [jsinterp] Add support for quoted names and indexers (#13123, #13124, #13125, + #13126, #13128, #13129, #13130, #13131, #13132) ++ [extractor/common] Add support for schemeless URLs in _extract_wowza_formats + (#13088, #13092) ++ [utils] Recognize more audio codecs (#13081) + +Extractors ++ [vier] Extract more metadata (#12539) +* [vier] Improve extraction (#12801) + + Add support for authentication + * Bypass authentication when no credentials provided + * Improve extraction robustness +* [dailymail] Fix sources extraction (#13057) +* [dailymotion] Extend URL regular expression (#13079) + + +version 2017.05.14 + +Core ++ [extractor/common] Respect Width and Height attributes in ISM manifests ++ [postprocessor/metadatafromtitle] Add support regular expression syntax for + --metadata-from-title (#13065) + +Extractors ++ [mediaset] Add support for video.mediaset.it (#12708, #12964) +* [orf:radio] Fix extraction (#11643, #12926) +* [aljazeera] Extend URL regular expression (#13053) +* [imdb] Relax URL regular expression (#13056) ++ [francetv] Add support for mobile.france.tv (#13068) ++ [upskill] Add support for upskillcourses.com (#13043) +* [thescene] Fix extraction (#13061) +* [condenast] Improve embed support +* [liveleak] Fix extraction (#12053) ++ [douyu] Support Douyu shows (#12228) +* [myspace] Improve URL regular expression (#13040) +* [adultswim] Use desktop platform in assets URL (#13041) + + +version 2017.05.09 + +Core +* [YoutubeDL] Force --restrict-filenames when no locale is set on all python + versions (#13027) + +Extractors +* [francetv] Adapt to site redesign (#13034) ++ [packtpub] Add support for authentication (#12622) +* [drtv] Lower preference for SignLanguage formats (#13013, #13016) ++ [cspan] Add support for brightcove live embeds (#13028) +* [vrv] Extract DASH formats and subtitles +* [funimation] Fix authentication (#13021) +* [adultswim] Fix extraction (#8640, #10950, #11042, #12121) + + Add support for Adobe Pass authentication + + Add support for live streams + + Add support for show pages +* [turner] Extract thumbnail, is_live and strip description ++ [nonktube] Add support for nonktube.com (#8647, #13024) ++ [nuevo] Pass headers to _extract_nuevo +* [nbc] Improve extraction (#12364) + + +version 2017.05.07 + +Common +* [extractor/common] Fix typo in _extract_akamai_formats ++ [postprocessor/ffmpeg] Embed chapters into media file with --add-metadata ++ [extractor/common] Introduce chapters meta field + +Extractors +* [youtube] Fix authentication (#12820, #12927, #12973, #12992, #12993, #12995, + #13003) +* [bilibili] Fix video downloading (#13001) +* [rmcdecouverte] Fix extraction (#12937) +* [theplatform] Extract chapters +* [bandcamp] Fix thumbnail extraction (#12980) +* [pornhub] Extend URL regular expression (#12996) ++ [youtube] Extract chapters ++ [nrk] Extract chapters ++ [vice] Add support for ooyala embeds in article pages ++ [vice] Support vice articles (#12968) +* [vice] Fix extraction for non en_us videos (#12967) +* [gdcvault] Fix extraction for some videos (#12733) +* [pbs] Improve multipart video support (#12981) +* [laola1tv] Fix extraction (#12880) ++ [cda] Support birthday verification (#12789) +* [leeco] Fix extraction (#12974) ++ [pbs] Extract chapters +* [amp] Imporove thumbnail and subtitles extraction +* [foxsports] Fix extraction (#12945) +- [coub] Remove comment count extraction (#12941) + + +version 2017.05.01 + +Core ++ [extractor/common] Extract view count from JSON-LD +* [utils] Improve unified_timestamp ++ [utils] Add video/mp2t to mimetype2ext +* [downloader/external] Properly handle live stream downloading cancellation + (#8932) ++ [utils] Add support for unicode whitespace in clean_html on python 2 (#12906) + +Extractors +* [infoq] Make audio format extraction non fatal (#12938) +* [brightcove] Allow whitespace around attribute names in embedded code ++ [zaq1] Add support for zaq1.pl (#12693) ++ [xvideos] Extract duration (#12828) +* [vevo] Fix extraction (#12879) ++ [noovo] Add support for noovo.ca (#12792) ++ [washingtonpost] Add support for embeds (#12699) +* [yandexmusic:playlist] Fix extraction for python 3 (#12888) +* [anvato] Improve extraction (#12913) + * Promote to regular shortcut based extractor + * Add mcp to access key mapping table + * Add support for embeds extraction + * Add support for anvato embeds in generic extractor +* [xtube] Fix extraction for older FLV videos (#12734) +* [tvplayer] Fix extraction (#12908) + + +version 2017.04.28 + +Core ++ [adobepass] Use geo verification headers for all requests +- [downloader/fragment] Remove assert for resume_len when no fragments + downloaded ++ [extractor/common] Add manifest_url for explicit group rendition formats +* [extractor/common] Fix manifest_url for m3u8 formats +- [extractor/common] Don't list master m3u8 playlists in format list (#12832) + +Extractor +* [aenetworks] Fix extraction for shows with single season ++ [go] Add support for Disney, DisneyJunior and DisneyXD show pages +* [youtube] Recognize new locale-based player URLs (#12885) ++ [streamable] Add support for new embedded URL schema (#12844) +* [arte:+7] Relax URL regular expression (#12837) + + +version 2017.04.26 + +Core +* Introduce --keep-fragments for keeping fragments of fragmented download + on disk after download is finished +* [YoutubeDL] Fix output template for missing timestamp (#12796) +* [socks] Handle cases where credentials are required but missing +* [extractor/common] Improve HLS extraction (#12211) + * Extract m3u8 parsing to separate method + * Improve rendition groups extraction + * Build stream name according stream GROUP-ID + * Ignore reference to AUDIO group without URI when stream has no CODECS + * Use float for scaled tbr in _parse_m3u8_formats +* [utils] Add support for TTML styles in dfxp2srt +* [downloader/hls] No need to download keys for fragments that have been + already downloaded +* [downloader/fragment] Improve fragment downloading + * Resume immediately + * Don't concatenate fragments and decrypt them on every resume + * Optimize disk storage usage, don't store intermediate fragments on disk + * Store bookkeeping download state file ++ [extractor/common] Add support for multiple getters in try_get ++ [extractor/common] Add support for video of WebPage context in _json_ld + (#12778) ++ [extractor/common] Relax JWPlayer regular expression and remove + duplicate URLs (#12768) + +Extractors +* [iqiyi] Fix extraction of Yule videos +* [vidio] Improve extraction and sort formats ++ [brightcove] Match only video elements with data-video-id attribute +* [iqiyi] Fix playlist detection (#12504) +- [azubu] Remove extractor (#12813) +* [porn91] Fix extraction (#12814) +* [vidzi] Fix extraction (#12793) ++ [amp] Extract error message (#12795) ++ [xfileshare] Add support for gorillavid.com and daclips.com (#12776) +* [instagram] Fix extraction (#12777) ++ [generic] Support Brightcove videos in ' + PLAYER_REGEX = r'