Commit Graph

980 Commits (5d0c5371414b8e39b1288cbc80197921c45660b5)

Author SHA1 Message Date
Sergey M․ f74b341dde expect_info_dict actual-expected argument consistency
Jaime Marquínez Ferrándiz 2cb5b03e53 [test/test_unicode_literals] Remove duplicated imports
Philipp Hagemeister cae97f6521 Improve and test ffmpeg version detection
Philipp Hagemeister 6cbf345f28 Remove test/write_info_json
This is now covered by every single test_download testcase anyways :)
Philipp Hagemeister da4d4191a9 Merge branch 'master' of github.com:rg3/youtube-dl
Philipp Hagemeister 8bdcb436f9 [test_unicode_literals] Fix test
Philipp Hagemeister 42bdd9d051 [cinchcast] Add new extractor (Fixes )
Philipp Hagemeister 47d7c64274 [test_utils] Make test more realistically ()
Philipp Hagemeister 5f9b83944d [ffmpeg] Improve version check and call it from hls (Fixes )
Philipp Hagemeister e8df5cee12 [minhateca] Fix duration parsing
Philipp Hagemeister 4349c07dd7 [minhateca] Add extractor (Fixes )
Jaime Marquínez Ferrándiz 4472f84f0c [test/test_subtitles] Update checksum for vimeo subtitle file
Philipp Hagemeister 155f9550c0 [test/helper] Fix newlines in output of missing test fields
Philipp Hagemeister dcddc10a50 [test_unicode_literals] Arm unicode_literals check
From now on, the line

from __future__ import unicode_literals

should be contained in every single Python file lest we run into any more 2.x/3.x issues.
Going forward, we're likely to develop on 3.x only and would likely miss subtle bugs otherwise.
Philipp Hagemeister e075a44afb [tests] Remove useless u prefixes
Philipp Hagemeister be64b5b098 [xminus] Simplify and extend ()
Jouke Waleson 9e1a5b8455 PEP8: applied even more rules
Jouke Waleson 8bcc875676 PEP8: more applied
Jouke Waleson 5f6a1245ff PEP8 applied
Philipp Hagemeister 7d4111ed14 Provide guidance when called with a YouTube ID starting with a dash.
Reported at https://news.ycombinator.com/item?id=8648121
Jaime Marquínez Ferrándiz f56875f271 [test/test_compat] Restore the old value of the HOME environment variable
If the test was run before the YoutubeIE tests (for example by running
"nosetests -v test/test_compat.py test/test_download.py -m 'Youtube_1|compat_expand'"),
it wrote the signatures cache to the 'C:\Documents and Settings\тест\Application Data' folder.
It failed due to a problem in the cache code and the write_json_file function (fixed in f03e33b89a622af13fa5275c46b63aaa4814c499)
Philipp Hagemeister fbf94a7815 [swfinterp] Add more builtins and improve static variables
Philipp Hagemeister cd9ad1d7e8 [swfinterp] Basic support for constants (only ints for now)
Philipp Hagemeister 33a266f4ba [swfinterp] Implement charCodeAt
Philipp Hagemeister 8d05f2c16a [swfinterp] Add support for void methods
Philipp Hagemeister eb5376044c [swfinterp] Implement equals opcode
Philipp Hagemeister 3cbcff8a2d [swfinterp] Implement String basics
Philipp Hagemeister e983cf5277 [swfinterp] Interpret yet more opcodes
Philipp Hagemeister 0ab1ca5501 [swfinterp] Better error message
Philipp Hagemeister 4baafa229d [swfinterp] Intepret more multinames
Philipp Hagemeister 7f3e33a147 [swfinterp] Implement member assignment
Philipp Hagemeister a0f59cdcb4 [tests] Modernize
Philipp Hagemeister 6a68bb574a [eporner] Fix duration (Closes )
Philipp Hagemeister 609a61e3e6 [npo] Improve npo.nl (Fixes )
Philipp Hagemeister 4c0924bb24 [utils] Fix intlist_to_bytes in Python 2 ()
Philipp Hagemeister e4bdb37ec6 [spiegel] Add support for embeds
Philipp Hagemeister 3e6e4999ca [test/helper] Improve output
Michael Käufl 498942f187 [test_youtube_signature] Fix import
Broken in commit 8c25f81bee
Philipp Hagemeister 12ea2f30cf [utils] Remove unused get_meta_content function
Philipp Hagemeister 278143df5b [test_compat] Ignore unicode_literals
Jaime Marquínez Ferrándiz ac35c26686 [tests] Don't auto init YoutubeDL
It would print the debug headers for each test.
And nose uses a StringIO object for stdout, which in python 2.x doesn't have the 'encoding' attribute.
Philipp Hagemeister 42f7d2f588 [test_download] Fix import
Philipp Hagemeister 39f0a2a6b7 [test_swfinterp] Correct compilation on modern mxmlc versions
Philipp Hagemeister 8c25f81bee [util] Move compatibility functions out of util
utils is large enough without these compatibility functions.

Everything that is present in newer versions of Python (i.e. with dev Python it's just an import) goes into compat.py .
Everything else (i.e. youtube-dl-specific helpers) goes into utils.py .
Philipp Hagemeister 7d11297f3f Merge branch 'master' of github.com:rg3/youtube-dl
Philipp Hagemeister 6ad4013d40 [drtv] Allow fractional timestamps (Fixes )
Jaime Marquínez Ferrándiz 8abec2c8bb [test_utils] Fix compat_getenv and compat_expanduser tests on python 3.x
Philipp Hagemeister f744c0f398 [test_download] Improve error message
Philipp Hagemeister 70b7e3fbb6 [generic] Add a test case for direct links with broken HEAD ()
Sergey M․ f889cea109 Merge branch 'compat-getenv-and-expanduser' of https://github.com/dstftw/youtube-dl into dstftw-compat-getenv-and-expanduser
Conflicts:
	test/test_utils.py
	youtube_dl/__init__.py
Philipp Hagemeister c64ed2a310 [viddler] Use API
Sergey M 4510d14f0a [twitch] Update tests
Sergey M․ 0ca41c3d9c [walla] Fix typo
Sergey M․ 7bc8780c57 [walla] Fix extractor and add subtitle tests
Philipp Hagemeister e7b6d12254 [utils] Improve and test js_to_json
Philipp Hagemeister 410f3e73ab [utils] Fix js_to_json
Sergey M․ 4644ac5527 [core] Decode environment variables with filesystem encoding (Fixes , Fixes , Fixes )
Introduces compat versions of os.getenv and os.path.expanduser
Philipp Hagemeister c0f64ac689 [test/helper] Improve output of missing test definition dictionaries
Philipp Hagemeister 7a08ad7d59 [test/helper] Modernize
Philipp Hagemeister 99b67fecc5 [arte] Fix upload date extraction
Philipp Hagemeister 6be451f422 [youtube] Remove swf signature test cases
These files are now 0 Bytes
Philipp Hagemeister 9c44d2429b [vimeo:likes] Support large like lists (Fixes )
Philipp Hagemeister d6e6a42256 [vimeo:likes] Add new extractor (Fixes )
Philipp Hagemeister cdc628a498 [youtube] Move more tests to extractors
Philipp Hagemeister 0003a5c416 Merge remote-tracking branch 'dstftw/escape-non-ascii-in-urls'
Conflicts:
	test/test_utils.py
Philipp Hagemeister a020a0dc20 [facebook] Fix support for untitled videos (Fixes )
Sergey M․ d05cfe0600 [YoutubeDL/utils] Clarify rationale for URL escaping in comment, move escape routines to utils and add some tests
Philipp Hagemeister 9291475f7d [youtube] Move more tests to Playlist IE, and simply suitable.
Philipp Hagemeister 5df921b0e3 [test_cache] Add a dot in the file name
Philipp Hagemeister a0e07d3161 [youtube] Move cache into its own module
Philipp Hagemeister 7260ea0705 [comedycentral] Move tests to the extractor itself
Sergey M․ ca7b3246b6 [utils] Improve parse_duration
Sergey M․ 08a36c3569 [test_download] Check expected file minsize and md5 only when download is not skipped
Philipp Hagemeister 753727cded [test_download] Expect a minimum file size
This should detect when we're downloading a small text file by accident.
Philipp Hagemeister 22a6f15061 Move playlist tests to extractors.
From now on, test_download will run these tests. That means we benefit not only from the networking setup in there, but also from the other tests (for example test_all_urls to find problems with _VALID_URLs).
Philipp Hagemeister 4e408e479b [utils] Modernize tests
Philipp Hagemeister 2857084000 [test_download] Improve playlist handling
Philipp Hagemeister 2929b3e71d [vimeo] Move all testcases to extractors and clean up
Previously, these extractors all defined their own suitable methods.
No test_all_urls tests that everything is in order, automatically :)
Philipp Hagemeister 22449fa624 Improve test_all_urls output
Philipp Hagemeister 0990305d2a [generic] Fix rss under Python 2.x and move test to extractor
Philipp Hagemeister 829476b80a [googlesearch] Move test to extractor
Philipp Hagemeister 7adcbe7594 [rtlnl] Extract duration
Philipp Hagemeister 28028629b9 [gameone:playlist] Move test to extractor
Philipp Hagemeister 11f75cac3d Merge remote-tracking branch 'olebowle/gameone'
Philipp Hagemeister a053c3493a [test_YoutubeDL] Reorder formats ()
Philipp Hagemeister 266c71f971 Deprecate test_playlists
Philipp Hagemeister e8ee972c6e Allow playlist test definitions in test_download.
This moves playlist tests where they belong, i.e. to the extractors themselves.
Additionally, all our network interaction configuration for tests in test_download now applies to playlist tests as well.
Jaime Marquínez Ferrándiz a6da7b6b96 [facebook] Allow '?' before '#!' (fixes )
Jaime Marquínez Ferrándiz 173a7026d5 [test/test_utils] Fix typo in method name
Sergey M․ a954584f63 [bandcamp] Replace 404 playlist test
Philipp Hagemeister 4bc7009e8a [jsinterp] Add new testcase
Philipp Hagemeister 42f4dcfe41 [test_youtube_signatures] Modernize
Jaime Marquínez Ferrándiz ebe832dc37 [jsinterp] 'reverse' modifies the array in place (fixes )
Ole Ernst 71b6065009 [gameone] add playlist test
Philipp Hagemeister 0c92b57398 Remove unused imports
Philipp Hagemeister 9f43890bcd [jsinterp] Allow digits in function names
Philipp Hagemeister d82ba23ba5 [soundcloud:playlist] Fix test description
Philipp Hagemeister 0fd7fd71b4 [test/helper] Do not use deprecated method
Philipp Hagemeister d8624e6a80 [test_playlist] Add and use assertGreaterEqual
Philipp Hagemeister 54330a1c3c [swfinterp] Fix imports
Philipp Hagemeister b6ea11b967 [youtube] Add swf signature test case ()
Philipp Hagemeister 7fd48d0413 [youtube] Correct signature testcase
Philipp Hagemeister decf2ae400 [swfinterp] Correct array access
Philipp Hagemeister 0d989011ff [swfinterp] Add support for calling methods on objects
Philipp Hagemeister 01b4b74574 [swfinterp] Add support for calls to instance methods
Philipp Hagemeister 70f767dc65 [swfinterp] Add support for multiple classes
Philipp Hagemeister e75c24e889 [swfinterp] Extend tests and fix parsing
Philipp Hagemeister 0cb2056304 [swfinterp] Start working on basic tests
Philipp Hagemeister 5425626790 [youtube] Move swfinterp into its own file
Jaime Marquínez Ferrándiz ad25aee245 [youtube & jsinterp] Fix signature extraction (fixes )
Some functions are defined now inside an object, the jsinterp will search its definition if the variable is not defined in the local namespace.
Sergey M․ 345e37831c [youtube] Update nosubtitles test
Sergey M․ 00ac799b68 [vine:user] Update test
Philipp Hagemeister ebf361ce18 Merge remote-tracking branch 'azeem/soundcloud_likes'
Philipp Hagemeister f64ebfe3e5 [youtube] Correct signature test
Philipp Hagemeister 6f9d4d542f [youtube] Add test for new signature scheme ()
azeem 3941669d69 [soundcloud] Adding likes support to SoundcloudUserIE
Philipp Hagemeister dc2fc73691 [youtube:truncated_url] Move test to extractor
Petr Půlpán 31a196d7f5 [TeacherTube] add user + collection, removed classrooms
Jaime Marquínez Ferrándiz 78338f71ca [livestream:original] Add support for folder urls (closes )
The webpage only contains shortened links for the videos, since the server
doesn't support HEAD requests, we use an specific extractor for them.
Sergey M․ fd69098a45 [rutube] Update playlist tests
Petr Půlpán a14e1538fe [ustream:channel] replace test for an updated channel
Philipp Hagemeister 24f5251cce Merge remote-tracking branch 'pulpe/teachertube'
Conflicts:
	youtube_dl/extractor/__init__.py
Jaime Marquínez Ferrándiz 24577db241 [test/test_youtube_lists] Replace mix list
The old video doesn't have a mix anymore.
pulpe b4e7447458 [TeacherTubeIE] Add extractor for teachertube.com videos + classrooms (fixes )
Jaime Marquínez Ferrándiz 0d69795014 Merge pull request from simonwjackson/patch-1
Update test_age_restriction.py
Sergey M․ 6ebb46c106 [ivi] Replace tests
Sergey M․ cc5ada6f4c [ivi] Update playlist tests
Simon W. Jackson 8ae980807a Update test_age_restriction.py
typo
codesparkle 1c783bca88 fixed (what I assume was a typo) that caused test_format_note to always fail.
This test was introduced in c57f775710.
Philipp Hagemeister 7b93c2c204 Merge remote-tracking branch 'jnormore/vine_user'
Philipp Hagemeister d0a122348e [test/helper] Clarify which field failed an assertion
Jason Normore ea783d01e1 Added VineUserIE extractor for vine user timeline
Added vine user timeline extractor using unofficial
vine api user profile and timeline api endpoints.
Philipp Hagemeister 2099125333 [soundcloud/generic] Add support for playlists
Philipp Hagemeister c57f775710 [YoutubeDL] Add simple tests for format_note (Closes )
Philipp Hagemeister 0321213c11 [test_subtitles] Allow more subtitles for TED videos
Philipp Hagemeister b9ba5dfa28 [test helper] Correct only_matching test gathering
Sergey M․ 3a9d6790ad [ivi] Update playlist tests
Philipp Hagemeister 52fadd5fb2 [test_all_urls] Add support for distributed URL matching test definition
Philipp Hagemeister 5367fe7f4d [test_all_urls] Simplify
Philipp Hagemeister de906ef543 [aol] Add support for playlists (Fixes )
Philipp Hagemeister b9c76aa1a9 [youtube] Add support for cleanvideosearch.com (Fixes )
Philipp Hagemeister 7753cadbfa [comedycentral:shows] Add support for TDS special editions (Fixes )
Philipp Hagemeister 4be9f8c814 [ninegag] Add support for p/ URLs
Philipp Hagemeister 29e3e682af [comedycentral] Match more URLs
Looks like they only offer clips instead of full episodes now. We'll need to add new parsing code as well.
Philipp Hagemeister a355b70f27 [cspan] Do not test number of playlist entries
Apparently, CSpan switches between single-file and multiple-file results. Either one is fine as long as we get the full four hours.
Philipp Hagemeister 676eb3f2dd Fix unicode_escape (Fixes )
Philipp Hagemeister c8edf47b3a [yahoo] Support https and -uploader URLs (Fixes )
Philipp Hagemeister 3537b93d8a [tests] Fix YoutubeDL tests
Since bec1fad, the id, title, and url (also in formats) keys are mandatory. Change the tests to reflect that.
Philipp Hagemeister 968ed2a777 [comedycentral] Add test for
Philipp Hagemeister aea6e7fc3c [cspan] Support multiple segments (Fixes )
Philipp Hagemeister 651486621d [comedycentral] Allow URLs with query parts (fixes )
Philipp Hagemeister 16f4eb723a [comedycentral] Add support for /videos URLs (Fixes )
Philipp Hagemeister 69c01a9f68 [comedycentral] Add a testcase for extended-interviews URLs ()
Philipp Hagemeister fac55558ad [washingtonpost] Add extractor (Fixes )
Philipp Hagemeister 912b38b428 [instagram] Fix info_dict key name
Philipp Hagemeister ea38e55fff [instagram] Add support for user profiles (Fixes )
Philipp Hagemeister 257cfebfe6 [test] Move expect_info_dict out of test_download
fiocfun 9f5809b3e8 [xtube] user playlist extractor
Philipp Hagemeister 231f76b530 [toypics] Separate user and video extraction ()
Philipp Hagemeister a9c2896e22 Make missing test definition fields an error
If the result is not testable (for example, because a description changes often), either pass in a type or a regular expression (a string starting with 're:')
Philipp Hagemeister 773c0b4bb8 [pbs] Add support for widget URLs (Fixes )
Philipp Hagemeister ff14fc4964 [test] Rename get_testcases to gettestcases
Apparently, newer versions of nosetests are somewhat over-eager in their test discovery.
Jaime Marquínez Ferrándiz bc6d597828 Add bestvideo and worstvideo to special format names ()
Philipp Hagemeister 955c451456 Rename upload_timestamp to timestamp
Philipp Hagemeister 2a1db721d4 [test_download] Move assertions before debugging output
Philipp Hagemeister c3d36f134f [googlesearch] Fix next page indicator check
Philipp Hagemeister 84769e708c [ninegag] Fix extraction
Jaime Marquínez Ferrándiz b1ff87224c [vimeo] Now VimeoIE doesn't match urls of channels with a numeric id (fixes )
Philipp Hagemeister 6a72423955 [generic] Use a different URL for the generic RSS test (Closes )
Jaime Marquínez Ferrándiz 1471956573 Add a basic test suite for the InfoExtractor class
Jaime Marquínez Ferrándiz 957688cee6 [ustream:channel] Update test's number of entries
Jaime Marquínez Ferrándiz b74fa8cd2c [facebook] Fix login process
It was broken and didn't work in python 3.
And use `_download_webpage` instead of `compat_urllib_request.urlopen`.
Jaime Marquínez Ferrándiz ca1fee34f2 [ted] Fix playlist extraction and add a test
Philipp Hagemeister c9ae7b9565 [youtube] Add support for search result URLs (Fixes )
Philipp Hagemeister 2437fbca64 [tests] Raise an exception if test definition is invalid (Found in )
Jaime Marquínez Ferrándiz ea5a0be811 Skip youtube toptracks test
All the playlists return 500 errors.
Philipp Hagemeister 62e609ab77 Ignore BOM in batch files (Fixes )
Jaime Marquínez Ferrándiz 9e57ce716f [academicearth] Fix extraction
The courses seems to be no longer available, changed the test to a playlist.
Philipp Hagemeister 491ed3dda2 [trutube] Support multiple formats ()
Philipp Hagemeister 4fc946b546 [generic] Add support for RSS feeds (Fixes )
Philipp Hagemeister 2eb5d315d4 [youtube] Match more truncated URLs (Closes )
Sergey M. 2db806b4aa Improve parse_duration
Philipp Hagemeister b53466e168 Fix f4m downloading on Python 2.6
Jaime Marquínez Ferrándiz 99043c2ea5 Replace test for dailymotion users
Philipp Hagemeister 026fcc0495 Fix (date parsing with dashes)
Philipp Hagemeister 9766538124 [jadorecettepub] Add extractor (Fixes )
Philipp Hagemeister bf5f610099 [pbs] Add support for viralplayer links (Fixes )
Jaime Marquínez Ferrándiz d67cc9fa7c [youtube:playlist] Recognize ‘top tracks’ urls (closes )
The list parameter starts with ‘MC’ and can have more characters after it, including dots
Philipp Hagemeister dcf3eec47a [test_download] Skip over BadStatusLine errors
An error like https://travis-ci.org/rg3/youtube-dl/jobs/18317799#L449 is almost certainly the server's fault.
Philipp Hagemeister ccf9114e84 [googlesearch] Fix start, and skip playlists (Fixes )
Jaime Marquínez Ferrándiz bc4850908c [test/youtube_signature] Add a test with the last player
To verify it correctly handles function with “$” in their names.
Philipp Hagemeister 56dced2670 remove accidentally duplicated test file
Philipp Hagemeister 22e7f1a6ec [pbs] Add support for article pages (Fixes )
Philipp Hagemeister 99877772d0 [generic] Add support for multiple brightcove URLs (Fixes )
Sergey M. b0268cb6ce [vimeo] Remove superfluous whitespace
Sergey M. 4edff4cfa8 [vimeo] Add subtitle tests
Philipp Hagemeister b4bcffefa3 [blip.tv] Add support for subtitles ()
Philipp Hagemeister 456895d9cf [tumblr] Test new URL format ()
Philipp Hagemeister 4857beba3a Merge remote-tracking branch 'dstftw/rutube-channel'
dst 98669ed79c [imdb] Fix playlist test
dst 87fac3238d [rutube] Add channel test
Jaime Marquínez Ferrándiz 48f9678a32 [test/youtube_lists] Change the list used for testing the Top Lists extractor
The ‘Top tracks’ list is not always present in the channel page
Philipp Hagemeister 65697b3bf3 Merge branch 'paged-lists'
Conflicts:
	test/test_utils.py
	youtube_dl/extractor/youtube.py
Philipp Hagemeister 8908741806 Use unicode_literals in test_YoutubeDL
Philipp Hagemeister ba7678f9cc Add -f bestaudio (Fixes )
Philipp Hagemeister 5aafe895fc Correct XML ampersand fixup
Philipp Hagemeister b7ab059084 Add infrastructure for paged lists
This commit allows to download pages in playlists as needed instead of all at once.
Before this commit,
    youtube-dl http://www.youtube.com/user/ANNnewsCH/videos --playlist-end 2 --skip-download
took quite some time - now it's almost instantaneous.
As an example, the youtube:user extractor has been converted.
Fixes 
Philipp Hagemeister 26dca1661e [ted] Updated checksums
Philipp Hagemeister 8307aa73fb Remove youtube swf signature test
Apparently, swf players are no longer in use. If we find one, we'll readd it.
Philipp Hagemeister 484aaeb204 [everyonesmixtape] Add support (Fixes )
Philipp Hagemeister ecfef3e5bf +unicode_literals
Philipp Hagemeister 3d3538e422 [khanacademy] Add support (Fixes )
Philipp Hagemeister 48a2034671 [vimeo] Fix playlist URL matching
Philipp Hagemeister 01c62591d1 [setup.py] Do not use unicode literals
See http://bugs.python.org/issue13943 for context
Philipp Hagemeister 28ab2e48ae fix typo
Philipp Hagemeister 6febd1c1df Prepare widespread unicode literal use
Jaime Marquínez Ferrándiz 4fb757d1e0 Merge pull request from dstftw/imdb-list
[imdb] Add support for IMDb list ()
Philipp Hagemeister 608d11f515 [cnn] Add multiple formats, duration, and upload_date
dst 41cc67c542 [imdb] Add playlist test
Philipp Hagemeister 3d4a70b821 Add more tests for format selection
Philipp Hagemeister 00b2685b9c Merge remote-tracking branch 'origin/master'
Philipp Hagemeister 8e3e03229e [YoutubeDL] fix tests (Closes )
Jaime Marquínez Ferrándiz 9d8d675e0e [subtitles-tests] Fix youtube test
It returns now a single info_dict
Jaime Marquínez Ferrándiz 933605d7e8 YoutubeDL: rename `_fd_progress_hooks` back to `_progress_hooks`
In the future it may report more things.
Philipp Hagemeister 9fc3bef87a Merge remote-tracking branch 'jaimeMF/split-downloaders'
dst 5ce54a8205 [ivi] Neat import
dst 8c21b7c647 [ivi] Add playlist tests
Philipp Hagemeister d6c7a367e8 [utils] Fix url_basename
Philipp Hagemeister 29eb517403 Add webpage_url_basename info_dict field (Fixes )
Philipp Hagemeister d6756d3758 [playlist-test] require a string
Philipp Hagemeister d90df974c3 [academicearth] Add support for courses ()
Philipp Hagemeister 8c8e3eec79 [facebook] Recognize #! URLs (Fixes )
Jaime Marquínez Ferrándiz 8ab470f1b2 Now a new FileDownloader is created when downloading a video
The progress hooks can be added using the method "add_downloader_progress_hook"
Jaime Marquínez Ferrándiz 26e6393134 Set 'NA' as the default value for missing fields in the output template (fixes )
Remove the `except KeyError` clause, it won't get raised anymore
Philipp Hagemeister 4ff50ef846 [soundcloud] Do not match sets (Fixes )
Philipp Hagemeister 977887469c Lower number of expected entries in top list
Philipp Hagemeister ffa8f0df0a Merge remote-tracking branch 'jaimeMF/yt-toplists'
Jaime Marquínez Ferrándiz fb30ec22fd [vimeo] Add an extractor for groups
Jaime Marquínez Ferrándiz 5cc14c2fd7 [vimeo] Add an extractor for albums (closes )
Jaime Marquínez Ferrándiz f53c966a73 [dailymotion] Extract view count ()
Jaime Marquínez Ferrándiz 6a656a843a Update description value for the write_info_json test (required after 27dcce1904)
Philipp Hagemeister 25939ffe56 Merge branch 'smotri.com' of https://github.com/dstftw/youtube-dl
dst 5270d8cb13 Added extractors for smotri.com
Philipp Hagemeister a9be0cc736 Merge branch 'master' of github.com:rg3/youtube-dl
Jaime Marquínez Ferrándiz 55a10eab48 [vimeo] Add an extractor for users (closes )
Philipp Hagemeister e344693b65 Make socket timeout configurable, and bump default to 10 minutes ()
Jaime Marquínez Ferrándiz 0a688bc0b2 [youtube] Add support for downloading top lists (fixes )
It needs to know the channel and the title of the list, because the ids change every time you browse the channels and are attached to a 'VISITOR_INFO1_LIVE' cookie.
Philipp Hagemeister 4e0084d92e [youtube/subtitles] Change MD5 of vtt subtitle in test
Jaime Marquínez Ferrándiz 652cdaa269 [youtube:playlist] Add support for YouTube mixes (fixes )
Philipp Hagemeister d0efb9ec9a [tests] Remove global_setup function
Jaime Marquínez Ferrándiz 16e055849e Update the keywords tests for the rename of the old ComedyCentralIE
Jaime Marquínez Ferrándiz f459d17018 [youtube] Add an extractor for downloading the watch history (closes )
Philipp Hagemeister 081640940e Merge branch 'master' of github.com:rg3/youtube-dl
Philipp Hagemeister 7012b23c94 Match --download-archive during playlist processing (Fixes )
Jaime Marquínez Ferrándiz d3b30148ed [bambuser:channel] Update test
Philipp Hagemeister 3f8ced5144 Merge remote-tracking branch 'jaimeMF/yt-playlists'
Jaime Marquínez Ferrándiz 0980426559 [bandcamp] add support for albums (reported in )
Jaime Marquínez Ferrándiz a6a173c2fd utils.shell_quote: Convert the args to unicode strings
The youtube test video failed with `UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 34: ordinal not in range(128)`, the problem was with the filenames being encoded.
Philipp Hagemeister f99e0f1ed6 Adapt age restriction tests to new .info.json filenames
Philipp Hagemeister 4eb92208a3 Adapt test to changed .info.json name
Janez Troha 08bc37cdd0 Update test_write_info_json.py
Jaime Marquínez Ferrándiz dcbb45803f [youtube:playlist] Don't use the gdata api (closes )
Parse the playlist pages instead
Jaime Marquínez Ferrándiz ae84f879d7 Merge all the subtitles test into a single file
They reuse a base class
Jaime Marquínez Ferrándiz be6dfd1b49 [ted] Return a single info_dict for talks urls
It failed with the --list-subs option
Jaime Marquínez Ferrándiz 231516b6c9 Merge pull request from iemejia/master
[ted] support for subtitles
Jaime Marquínez Ferrándiz 12c167c881 [soundcloud] Allow to download tracks marked as not 'streamable'
They use the rtmp protocol but if the are marked as 'downloadable' it can use the direct download link.
Jaime Marquínez Ferrándiz 9ee2b5f6f2 tests: don't run the test if any of the extractors listed in the 'add_ie' field is marked as not working
Ismaël Mejía 4ed3e51080 [ted] fixed error in case of no subtitles present
I created a test, but I leave it commented since TED videos get
new subtitles frequently.
Jaime Marquínez Ferrándiz be97abc247 Set the 'extractor_key' field in the info_dict
It's the string returned by the class method 'ie_key', which allows to retrieve the extractor with 'get_info_extractor'
Jaime Marquínez Ferrándiz 9103bbc5cd Add the 'webpage_url' field to info_dict
The url for the video page, it must allow to reproduce the result.
It's automatically set by YoutubeDL if it's missing.
Jaime Marquínez Ferrándiz b6c45014ae Set the extra_info inside YoutubeDL.process_ie_result and set only if the keys are missing
Ismaël Mejía 38fcd4597a Merge remote-tracking branch 'iemejia/master'
Jaime Marquínez Ferrándiz 165e3bb67a [bambuser] Add an extractor for channels (closes )
Ismaël Mejía 38db46794f Merge branch 'ted_subtitles'
Ismaël Mejía a9a3876d55 [ted] Added support for subtitle download
Jaime Marquínez Ferrándiz 0ef7ad5cd4 Fix the test for dailymotion subtitles
The extractor returns a single info_dict now.
Filippo Valsorda f6cc16f5d8 [tests] a HTTP 503 is a transient issue
Philipp Hagemeister 646e17a53d Fix YouTubeDL test
Filippo Valsorda dd508b7c4f [tests] don't fail on network errors
This is suboptimal, but at least this way we will need to look at the logs
only to check for network errors that happen too often, instead of
parsing a ton of lines each time to see if there is some true test failing
Jaime Marquínez Ferrándiz 702665c085 tests: build the filename from the info_dict if the 'file' key is missing
It will need to have the 'id' and 'ext' keys to work.
Jaime Marquínez Ferrándiz 49e86983e7 Allow to use the extension for the format selection
The best format with the extension is downloaded.
Jaime Marquínez Ferrándiz a9c58ad945 Accept requested formats to be in the format 35/best (closes )
The format selection code is now an independent function.
Philipp Hagemeister f4d96df0f1 Extend with --max-quality support
Philipp Hagemeister 5d254f776a Fix test
Philipp Hagemeister 1c1218fefc Merge remote-tracking branch 'jaimeMF/format_selection'
Philipp Hagemeister 10eaae48ff Merge branch 'master' of github.com:rg3/youtube-dl
Philipp Hagemeister 9d4660cab1 [generic] Support embedded vimeo videos ()
Jaime Marquínez Ferrándiz e772692ffd Fix an import in the tests and the Youtube Shows test
Philipp Hagemeister 44a5f1718a Simplify tests
* Make them directly executable again
* Move common stuff (md5, parameters) to helper
* Never import *
* General clean up
Jai Grimshaw 1fb07d10a3 [youtube] Adds Download annotations
Adds  Download annotations from youtube
Annotations are downloaded and written to a .annotations.xml file using the https://www.youtube.com/annotations_invideo?features=1&legacy=1&video_id=$VIDEOID API.
Added unit test for annotations.
Jaime Marquínez Ferrándiz d7e66d39a0 Add an extractor for internetvideoarchive.com videos
It's used by videodetective.com
Filippo Valsorda d3f46b9aa5 Add support for single-test tox runs
Use a sintax like
    tox test.test_download:TestDownload.test_NowVideo
to run the specific test on all the tox environments (Python versions)
Jaime Marquínez Ferrándiz e028d0d1e3 Implement the prefer_free_formats in YoutubeDL
Jaime Marquínez Ferrándiz 91dbaef406 [nhl] Add an extractor for videocenter's categories ()
It downloads the last 12 videos.
Philipp Hagemeister b2ad967e45 Simplify test setup
Philipp Hagemeister 8dbe9899a9 Allow users to specify an age limit (fixes )
With these changes, users can now restrict what videos are downloaded by the intented audience, by specifying their age with --age-limit YEARS .
Add rudimentary support in youtube, pornotube, and youporn.
Philipp Hagemeister f4aac741d5 Move try_rm to test helpers
Filippo Valsorda 8932a66e49 [fixup] remove unnecessary commented function
Filippo Valsorda 00fcc17aee add capability to suppress expected warnings in tests
Filippo Valsorda 7c61bd36bb [youtube] correct --no-playlist for python3
Filippo Valsorda d4d9920a26 add test for --no-playlist
Philipp Hagemeister 45f4a76dbc Work around nosetests nosiness
Philipp Hagemeister 95dbd2f990 Change test target (Verified with node.js)
Philipp Hagemeister e0df6211cc Restore accidentally deleted commits
That's what happens if you let Windows machines write :(
Jaime Marquínez Ferrándiz b00ca882a4 [livestream] Fix events extraction (fixes )
Jaime Marquínez Ferrándiz 39baacc49f [dailymotion] Add an extractor for users (closes )
Jaime Marquínez Ferrándiz e69ae5b9e7 [youtube] support youtube.googleapis.com/v/* urls (fixes )
Jaime Marquínez Ferrándiz 92790f4e54 [soundcloud] Add an extractor for users (closes )
Jaime Marquínez Ferrándiz 0b7f31184d Now --all-sub is a modifier to --write-sub and --write-auto-sub (closes )
For keeping backwards compatibility --all-sub sets --write-sub if --write-auto-sub is not given
Jaime Marquínez Ferrándiz a921f40799 [ustream] Simplify channel extraction
the ChannelParser has been moved to a new function in utils get_meta_content
Instead of the SocialStreamParser now it uses a regex
Jaime Marquínez Ferrándiz 74ac9bdd82 Merge pull request from tewe/master
Add Ustream channel support
Ismael Mejia cf1dd0c59e Merge branch 'master' into subtitles_rework
Jaime Marquínez Ferrándiz 8963d9c266 [youtube] Modify the regex to match ids of length 11 (fixes )
In urls like http://www.youtube.com/watch?v=BaW_jenozKcsharePLED17F32AD9753930 you can't split the query string and ids always have that length.
Ismael Mejia 72836fcee4 Merge branch 'master' into subtitles_rework
Ismael Mejia d6e203b3dc [subtitles] fixed multiple subtitles language separated by comma after merge
As mentioned in the pull request, I forgot to include this changes.
aa6a10c44a
Jaime Marquínez Ferrándiz e3ea479087 [youtube] Fix some issues with the detection of playlist/channel urls (reported in )
They were being caught by YoutubeUserIE, now it only extracts a url if the rest of extractors aren't suitable.
Now the url tests check that the urls can only be extracted with an specific extractor.
Jaime Marquínez Ferrándiz faab1d3836 [youtube] Fix detection of feeds urls (fixes )
Urls like https://www.youtube.com/feed/watch_later were being as users (before the last changes to YoutubeUserIE, as videos)
Jaime Marquínez Ferrándiz f4b052321b [youtube] Urls like youtube.com/NASA are now interpreted as users (fixes )
Video urls like http://youtube.com/BaW_jenozKc are not valid, but http://youtu.be/BaW_jenozKc is correct.
Jaime Marquínez Ferrándiz b7052e5087 Also print the field that fails if it is a md5 checksum
Jaime Marquínez Ferrándiz aa6a10c44a Allow to specify multiple subtitles languages separated by commas (closes )
Jaime Marquínez Ferrándiz 9e9c164052 Merge pull request from jaimeMF/subtitles_rework
Subtitles rework
Ismael Mejia 18b4e04f1c Merge branch 'master' into subtitles_rework
Philipp Hagemeister d741e55a42 [youtube] Support watch_popup URLs (Fixes )
Ismael Mejia d80a064eff [subtitles] Added tests to check correct behavior when no subtitles are
available
Ismael Mejia 447591e1ae [test] Cleaned subtitles tests
Ismael Mejia 33eb0ce4c4 [subtitles] removed only-sub option (--skip-download achieves the same
functionality)
Philipp Hagemeister e2f48f9643 Remove youtube sig tests
The signature algo changes too often for the static test to make sense.
Ismael Mejia 953e32b2c1 [dailymotion] Added support for subtitles + new InfoExtractor for
generic subtitle download.

The idea is that all subtitle downloaders must descend from SubtitlesIE
and implement only three basic methods to achieve the complete subtitle
download functionality. This will allow to reduce the code in YoutubeIE
once it is rewritten.
Jaime Marquínez Ferrándiz 04bca64bde [youtube]: new algo for length 83 (fixes )
Jaime Marquínez Ferrándiz 75952c6e3d YoutubeIE: new algo for length 86 (fixes )
Now is using the same length as the flash player used for age protected videos, but the algorithm is different, so now for age protected videos it first tries to use the old algo.
Jaime Marquínez Ferrándiz caeefc29eb [vimeo] add an extractor for channels
Jaime Marquínez Ferrándiz a3c736def2 [dailymotion] Add an extractor for Dailymotion playlists
Jaime Marquínez Ferrándiz 5c468ca8a8 YoutubeIE: add algo for length 79 (fixes )
Jaime Marquínez Ferrándiz aedd6bb97d YoutubeIE: new algo for length 81 (fixes )
patrickslin 239e3e0cca YoutubeIE: new algo for length 87 (fixes )
Squashed commit from the pull requests ,  and .
Jaime Marquínez Ferrándiz 5d51a883c2 Use a dictionary for storing the subtitles
The errors while getting the subtitles are reported as warnings, if no subtitles are found return and empty dict.
Jaime Marquínez Ferrándiz a4358cbabd YoutubeIE: new algo for length 85 (closes ), thanks to @patrickslin
Jaime Marquínez Ferrándiz 3e0b3a1428 Remove the test to signature of lengths 43,43
It's already covered by the test for length 87
Jaime Marquínez Ferrándiz 444b116597 YoutubeIE: add algo for length 90 (closes )
Order the cases from higher to lower length.
Philipp Hagemeister 51fb64bab1 Mark test_youtube_sig as non-executable ()
Philipp Hagemeister 2a5201638d [youtube] Add sig test for 92 (Thanks to @patrickslin)
Jaime Marquínez Ferrándiz 606d7e67fd YoutubeIE: add algo for length 81 (closes )
Jaime Marquínez Ferrándiz 85347e1cb6 YoutubeIE: a new algo for length 83
Philipp Hagemeister 59ae56fad5 Add helper function find_path_attr
Jaime Marquínez Ferrándiz c93898dae9 YoutubeIE: new algo for length 83 (closes and closes )
Philipp Hagemeister 897f36d179 [youtube:subscriptions] Use colon for differentiation of shortcuts
Jaime Marquínez Ferrándiz 75dff0eef7 [youtube]: add YoutubeShowIE (closes )
It just extracts the playlists urls for each season
Jaime Marquínez Ferrándiz bc2884afc1 Print which IE is being skipped in test_download
Jaime Marquínez Ferrándiz 023fa8c440 Add function add_default_info_extractors to YoutubeDL
It adds to the list the ies returned by ge_extractors
Philipp Hagemeister a924876fed Make sure that IEs only accept their own URLs
Philipp Hagemeister fc2c063e1e Move testcase generator to helper
Philipp Hagemeister 6f5ac90cf3 Move tests to the IE definitions
Philipp Hagemeister 0c56a3f773 [googleplus] move tests
Philipp Hagemeister 9d069c4778 [infoq] move tests
Philipp Hagemeister 67f51b3d8c [youku] move tests
Philipp Hagemeister 5c5de1c79a [eighttracks] move test
Philipp Hagemeister 0821771466 [steam] move test
Philipp Hagemeister 83f6f68e79 [metacafe] move tests
Philipp Hagemeister 0c6c096c20 [soundcloud] Move tests
Philipp Hagemeister 41beccbab0 Use str every time
Philipp Hagemeister 2eb88d953f Allow _TESTS attribute for IEs with multiple tests
This also improves the numbering of duplicate tests
Philipp Hagemeister 6b47c7f24e Allow moving tests into IE files
Allow adding download tests right in the IE file.
This will cut down on merge conflicts and make it more likely that new IE authors will add tests right away.
Philipp Hagemeister ed4a915e08 Add tests and improve for HotNewHipHop
Filippo Valsorda 23300d7149 a new day, a new s algo - fix
Philipp Hagemeister 6b37f0be55 Add a clean-room implementation for youtube signatures
Philipp Hagemeister 5746f9da99 Add test for youtube signature algorithm
Philipp Hagemeister 112da0a0ce Simplify FakeYDL
Philipp Hagemeister ed92bc9f6e [wimp] minor readability improvements ()
Jaime Marquínez Ferrándiz aa0c87391c Add CSpanIE (closes )
M.Yasoob Khalid 8bcc355972 removed trailing ',' and corrected the title in test
M.Yasoob Khalid 6b4642fae3 added test for wimp.com
Ismael Mejia 65cceef8f4 Added support for additional vtt subtitle format (WebVTT) in youtube-dl.
Jaime Marquínez Ferrándiz b004821fa9 Add the option "--write-auto-sub" to download automatic subtitles from Youtube
Now automatic subtitles are only downloaded if the option is given.
(closes )
M.Yasoob Khalid f4daa18152 added test for tudou.com
Filippo Valsorda f7ab6cbe16 add tests for use_cipher_signature videos () and the ability to test multiple videos per IE
Jaime Marquínez Ferrándiz 70d1924f8b Add VevoIE
Jaime Marquínez Ferrándiz 8bf8b5a577 Use the new class in the tests
Jaime Marquínez Ferrándiz 8222d8de88 Split FileDownloader in two classes: FileDownloader and YoutubeDL
YoutubeDL is the class that coordinates everything
FileDownloader gets a filename and an info dict and downloads the video.
Philipp Hagemeister 825e0984e2 [break] adapt to new paths
Philipp Hagemeister d1cade5ade Correct module name
Philipp Hagemeister 0824c28c8b Remove mentions of old InfoExtractors module
Philipp Hagemeister b8a360837a Fix Statigram test
Philipp Hagemeister 51ce3a75c9 Improve error reporting for downloads
M.Yasoob Khalid 9b5fffb149 added an IE and test for break.com
Philipp Hagemeister 828dba2983 Improvge error reporting
Philipp Hagemeister 6b3f5a329b Improve Statigr.am IE
M.Yasoob Khalid 4fdd4e6f6f added test for Statigr
Jaime Marquínez Ferrándiz f4c8bbcfc2 TEDIE: download the best quality video and use the new _search_regex functions
Also extracts the description.
Jaime Marquínez Ferrándiz 377fdf5dde Update the TumblrIE: the video is no longer available
Jaime Marquínez Ferrándiz 213b715893 Merge pull request from anisse/master
Fetch all entries that are in a youtube playlist

Also add a test.
Filippo Valsorda 8bc7c3d858 Merge branch 'search_regex' - PR - closes
Jaime Marquínez Ferrándiz 36ed7177f0 Fix HypemIE test: the song name has been changed
Jaime Marquínez Ferrándiz 32aa88bcae Add GametrailersIE
Jaime Marquínez Ferrándiz 31513ea6b9 Update test_issue_673 in Youtube Lists
Some videos have been removed.
Delete the title check, it's not the purpose of that test.
Jaime Marquínez Ferrándiz 9abc6c8b31 Update YahooIE test
The old test video is no longer available.
Filippo Valsorda ee55fcbe12 switch long info_dict fields checking to md5
Filippo Valsorda 78d3442b12 test: extend the reach of info_dict checking
* print the info_dict in a format suitable to easy adding to tests.json during tests if un-tested fields are detected
* make it possible to put the crc32 in tests.json if the field is too long
* complete the "info_dict" fields in existing tests
* fixed the bugs catched doing this
Filippo Valsorda 979a9dd4c4 _html_search_regex with clean_html superpowers
M.Yasoob Khalid ecb3e676a5 Added Vbox7 Infoextractor
Filippo Valsorda be95cac157 raise exceptions on warnings during tests - and solve a couple of them
Filippo Valsorda 476203d025 print WARNINGs during test + minor fix to NBAIE
M.Yasoob Khalid 157b864a01 added HypemIE
rebased, closes PR 
Filippo Valsorda 951b9dfd94 Merge pull request from yasoob/master
Added support for XHamster - closes 
M.Yasoob Ullah Khalid c978a96c02 Added test for XHamster.com
Clément DAVID 57bde0d9c7 Fix the test_all_urls (Import issue)
Clément DAVID 50b4d25980 Merge within test_all_urls
Clément DAVID 4a76d1dbe5 Add tests for justin.tv and twitch.tv
Jaime Marquínez Ferrándiz dc1c355b72 YoutubeIE: fallback to automatic captions when subtitles aren't found (closes )
Also modify test_youtube_subtitles to support running the tests in any order.
Jaime Marquínez Ferrándiz 45014296be Add TeamcocoIE (closes )
Anna Bernardi afef36c950 add support for Flickr videos - closes
Jaime Marquínez Ferrándiz 17bd1b2f41 VineIE: extract more information and minor style changes
Anna Bernardi 5b0d3cc0cd Add support for Vine - closes
Filippo Valsorda d4f76f1674 Add support for Howcast.com - closes
Jaime Marquínez Ferrándiz 340fa21198 UstreamIE: get thumbnail and uploader name
Jaime Marquínez Ferrándiz 59f4fd4dc6 YahooIE: remove old code and accept screen.yahoo.com videos ()
Videos require rtmpdump
Philipp Hagemeister 86fd453ea8 Merge remote-tracking branch 'origin/master'
Philipp Hagemeister c83411b9ee Skip bandcamp tests for now - free limit has been exceeded
Jaime Marquínez Ferrándiz 057c9938a1 Import FileDownloader in test_youtube_subtitles
Fix last commit
Jaime Marquínez Ferrándiz 9259966132 test_youtube_subtitles: FakeDownloader inherits form FileDownloader
julien 7f5bd09baf Add support to www.ina.fr
Jaime Marquínez Ferrándiz d96680f58d PhotobucketIE: accept new format of urls and add a test
Philipp Hagemeister 09dd418f53 Experimentally whitelist Escapist test
Philipp Hagemeister c34407d16c Simplify RedTube
M.Yasoob Ullah Khalid 815dd2ffa8 Redtube test now works
I just did a little makeover by changing redtube tests. Now they are passed.
M.Yasoob Ullah Khalid b86174e7a3 added test for redtube.com
I just added the test for redtube.com
Jaime Marquínez Ferrándiz 46bfb42258 InfoExtractors: use _download_webpage in more IEs
IEs without tests are intact.
Jaime Marquínez Ferrándiz 104ccdb8b4 TumblrIE: fix title matching
Jaime Marquínez Ferrándiz aed523ecc1 Add BandcampIE (closes )
Jaime Marquínez Ferrándiz 34c29ba1d7 Add test for SoundcloudSet
Philipp Hagemeister 8749b71273 Fix FakeDownloaders
Jaime Marquínez Ferrándiz ba7c775a04 Remove a commented line I forgot.
[ci skip]
Philipp Hagemeister 9665577802 Adapt tests to changes in youtube's "Most Popular" channel
Jaime Marquínez Ferrándiz 37254abc36 Allow to use relative dates in the format (now|today)[+-][0-9](day|week|month|year)(s)? (Closes )
Also fix DateRange not accepting ranges of one day.
Jaime Marquínez Ferrándiz bf50b0383e Fix some IEs that didn't return the uploade_date in the YYYYMMDD format
Create a function unified_strdate in utils.py to fix these problems
Jaime Marquínez Ferrándiz bd55852517 Allow to select videos to download by their upload dates (related )
Only absolute dates.
Jaime Marquínez Ferrándiz aba8df23ed YoutubePlaylistIE: don't crash with empty lists (related )
The playlist_title wasn't initialized.
Jaime Marquínez Ferrándiz c15e024141 TumblrIE
I haven't found many videos to test, so it may not work for all.
Jaime Marquínez Ferrándiz c72938240e Get the title of Youtube playlists
Jaime Marquínez Ferrándiz 9341212642 Create a function in InfoExtractors that returns the InfoExtractor class with the given name
Jaime Marquínez Ferrándiz 49da66e459 The test video for subtitles has added a new language
ispedals fb6c319904 Add tests for YoutubeChannelIE
- tests for identifying channel urls
- test retrieval of paginated channel
- test retrieval of autogenerated channel
Jaime Marquínez Ferrándiz dce9027045 Merge branch 'extract_info_rewrite'
Philipp Hagemeister 744435f2a4 Show whole diff in error cases
Philipp Hagemeister 0ba994e9e3 Skip ARD test as it requires rtmpdump
Philipp Hagemeister af9ad45cd4 Re-enable Stanford OC test
Philipp Hagemeister b03d65c237 Minor improvements for ARD IE
Jaime Marquínez Ferrándiz 14294236bf Merge branch 'master' into extract_info_rewrite
Filippo Valsorda 90a99c1b5e retry on UnavailableVideoError
Filippo Valsorda f375d4b7de import all IEs when testing to resemble more closely the real env
Filippo Valsorda e3700fc9e4 Merge pull request from rg3/retry
Exception stacking and test retry