pukkandan
901130bbcf
Expand and escape environment variables correctly in outtmpl
...
Fixes: https://www.reddit.com/r/youtubedl/comments/otfmq3/ytdlp_same_parameters_different_results
2021-07-29 08:38:18 +05:30
pukkandan
b5ac45b197
Fix selectors all
, mergeall
and add tests
...
Bug from: 981052c9c6
2021-07-07 21:10:43 +05:30
pukkandan
9fea350f0d
Fix id sanitization in filenames
...
Closes #415
2021-06-17 02:32:24 +05:30
pukkandan
187986a857
Better error handling of syntax errors in -f
2021-06-11 19:13:22 +05:30
pukkandan
385a27fad1
Improve offset parsing in outtmpl
2021-06-09 20:01:57 +05:30
pukkandan
5c6542ce69
[test] More rigorous tests for prepare_filename
...
All tests of `prepare_outtmpl` is now also run on `prepare_filename`
2021-06-09 20:01:56 +05:30
pukkandan
639f1cea92
Fix %d
and empty default in outtmpl
...
Closes #388
2021-06-09 15:37:15 +05:30
pukkandan
76a264ac9e
Make outtmpl more robust and catch errors early
2021-06-08 20:11:00 +05:30
pukkandan
87ea7dfc04
Fix filename sanitization
...
Bug from 752cda3880
2021-06-06 19:36:28 +05:30
pukkandan
752cda3880
Fix and refactor prepare_outtmpl
...
The following tests would have failed previously:
%(id)d %(id)r
%(ext)s-%(ext|def)d
%(width|)d
%(id)r %(height)r
%(formats.0)r
%s
2021-06-06 00:59:04 +05:30
felix
cc52de4356
[cleanup] Point all shebang to python3
( #372 )
...
Authored by: fstirlitz
2021-06-06 00:59:04 +05:30
pukkandan
c77495e3a4
[cleanup] _match_entry
2021-05-29 02:12:07 +05:30
pukkandan
af32f40bf5
[test] Fix test_YoutubeDL.TestYoutubeDL
...
Test `test_ignoreerrors_for_playlist_with_url_transparent_iterable_entries` was broken due to `__original_infodict` being added to the dict
2021-05-19 17:00:40 +05:30
pukkandan
a439a3a45c
Improve output template (see desc)
...
* Objects can be traversed like `%(field.key1.key2)s`
* A number can be added to the field as `%(field+n)s`
* Deprecates `--autonumber-start`
2021-04-22 04:19:33 +05:30
pukkandan
c32b0aab8a
Improve --sub-langs (see desc)
...
* Treat `--sub-langs` entries as regex
* `all` can be used to refer to all the subtitles
* the language code can be prefixed with `-` to exclude it
* Deprecates `--all-subs`
Closes #253
2021-04-20 02:58:03 +05:30
pukkandan
a7191c6f57
Fix some linter and typos
2021-04-16 05:31:47 +05:30
Pccode66
7a5c1cfe93
Completely change project name to yt-dlp ( #85 )
...
* All modules and binary names are changed
* All documentation references changed
* yt-dlp no longer loads youtube-dlc config files
* All URLs changed to point to organization account
Co-authored-by: Pccode66
Co-authored-by: pukkandan
2021-02-25 00:15:56 +05:30
Remita Amine
a820dc722e
Update to ytdl-2021.01.24.1
2021-01-24 20:28:44 +05:30
pukkandan
5d0c537141
Fix/disable tests
...
The disabled tests needs to be fixed later
Tests for FormatSort, Multistreams also needs be created
2021-01-07 17:22:46 +05:30
pukkandan
732044afb2
Add --write-*-link by h-h-h-h
...
Authored-by: h-h-h-h
2020-12-13 20:05:04 +05:30
pukkandan
a0566bbf5c
Updated to release 2020.11.21.1
2020-11-22 03:51:26 +05:30
Unknown
cefecac12c
[skip travis] renaming
...
to avoid using same folder when using pip install for example
2020-09-02 20:25:25 +02:00
Sergey M․
4e9e1e240d
[test_YoutubeDL] Add tests for #10591 ( closes #23873 )
2020-02-15 03:37:31 +07:00
Sergey M․
e0abaab293
[test_YoutubeDL] Fix get_ids
2020-02-15 03:37:25 +07:00
Sergey M․
067aa17edf
Start moving to ytdl-org
2019-03-11 04:00:54 +07:00
Sergey M․
e118a8794f
[YoutubeDL] Fix typo in string negation implementation and add more tests ( closes #18961 )
2019-01-24 01:39:39 +07:00
Sergey M․
2cc779f497
[YoutubeDL] Add negation support for string comparisons in format selection expressions ( closes #18600 , closes #18805 )
2019-01-20 13:48:49 +07:00
Sergey M․
d08dcd2dbd
[test_YoutubeDL] Fix typo ( closes #14856 )
2017-11-26 21:06:14 +07:00
Sergey M․
af0f74288d
[YoutubeDL] Improve _default_format_spec ( closes #14461 )
2017-10-11 23:48:05 +07:00
Sergey M․
cd6fc19ed7
[YoutubeDL] Ignore duplicates in --playlist-items
...
E.g. '--playlist-items 2-4,3-4,3' should result in '[2,3,4]', not '[2,3,4,3,4,3]'
2017-10-06 23:50:34 +07:00
Sergey M․
86a15ed64b
[test_YoutubeDL] Add test for #14425
2017-10-06 23:41:28 +07:00
Sergey M․
8cda78ef72
[test_YoutubeDL] Add a test for #10083
2017-08-02 23:12:34 +07:00
Sergey M․
0017d9ad6d
[YoutubeDL] Improve default format specification ( closes #13704 )
2017-07-23 00:12:01 +07:00
Sergey M․
0396806f67
[YoutubeDL] Do not override id, extractor and extractor_key in url_transparent
...
All these meta fields must be borrowed from final extractor that actually performs extraction.
This commit fixes extractor id in download archives for url_transparent downloads. Previously, 'transparent' extractor was erroneously
used for extractor archive id, e.g. 'eggheadlesson 4n8ugwwj5t' instead of 'wistia 4n8ugwwj5t'.
2017-07-21 00:13:32 +07:00
Sergey M․
15da37c7dc
[YoutubeDL] Don't expand env variables in meta fields ( closes #13637 )
2017-07-14 00:42:12 +07:00
Sergey M․
51350db5a3
[test_YoutubeDL] Add test for #11163
2017-04-16 01:14:05 +07:00
Sergey M․
d0d9ade486
[YoutubeDL] Add support for string formatting operations in output template
2017-02-23 22:57:53 +08:00
Sergey M․
398dea3210
[test_YoutubeDL] Fix invalid escape sequences
2017-02-15 23:20:46 +07:00
Sergey M․
db13c16ef8
[utils] Add support for quoted string literals in --match-filter ( closes #8050 , closes #12142 , closes #12144 )
2017-02-15 23:12:10 +07:00
Sergey M․
e5a088dc4b
[utils] Fix --match-filter for int-like strings ( closes #11082 )
2016-10-31 23:32:08 +07:00
Sergey M․
317f7ab634
[YoutubeDL] Fix format selection with filters ( Closes #10083 )
2016-07-16 00:55:43 +07:00
Sergey M․
4c3b16d5d1
[test_YoutubeDL] Add test for format_id format selection
2016-03-19 00:04:26 +06:00
Sergey M․
e0dccdd398
[test_YoutubeDL] PEP 8
2016-03-10 09:04:48 +06:00
Sergey M․
5d583bdf6c
[YoutubeDL] Improve _format_note
2016-03-10 01:03:18 +06:00
Sergey M․
86bf29050e
[test_YoutubeDL] Make test pass until more intelligent sort formats ( Closes #8462 )
2016-02-20 03:36:03 +06:00
remitamine
91cb6b5065
rename _parse_mpd to _parse_mpd_formats and add default value for mpd namespace
2016-02-06 14:03:48 +01:00
Yen Chi Hsuan
1df4141196
[test_YoutubeDL] Fix test_youtube_format_selection
...
Broken since a6c2c24479
. Thanks to
@jaimeMF and @anisse for pointing that out
2016-02-03 03:42:37 +08:00
Yen Chi Hsuan
b286f201a8
[YoutubeDL] Do not override ie_key in url_transparent
2016-02-01 17:05:48 +08:00
dyn888
b913348d5f
Test codec with a dot '.' in name selection.
2016-01-28 15:07:33 +01:00
Jaime Marquínez Ferrándiz
e37afbe0b8
[YoutubeDL] urlopen: disable the 'file:' protocol ( #8227 )
...
If someone is running youtube-dl on a server to deliver files, the user could input 'file:///some/important/file' and youtube-dl would save that file as a video giving access to sensitive information to the user.
'file:' urls can be filtered, but the user can use an URL to a crafted m3u8 manifest like:
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:10.0
file:///etc/passwd
#EXT-X-ENDLIST
With this patch 'file:' URLs raise URLError like for unknown protocols.
2016-01-14 00:24:04 +01:00
Jaime Marquínez Ferrándiz
232541df44
[YoutubeDL] format spec: correctly handle dashes and other unused operators
...
'mp4-baseline-16x9' must be handled as a single string, but the '-' was treated as an operator.
2015-08-04 22:29:23 +02:00
Jaime Marquínez Ferrándiz
d96d604e53
YoutubeDL: format spec: don't accept a bare '/' ( #6124 )
2015-08-03 23:04:11 +02:00
Jaime Marquínez Ferrándiz
0a31a35098
[YoutubeDL] format spec: add additional checks for invalid syntax
2015-07-10 22:46:25 +02:00
Jaime Marquínez Ferrándiz
bb8e553662
[YoutubeDL] format spec: Do not fail when a filter gives an empty result
...
For example with 'best[height<40]' we ended getting a 'IndexError: list index out of range'.
2015-07-04 21:41:09 +02:00
Jaime Marquínez Ferrándiz
f5f4a27a96
[YoutubeDL] format spec: fix handling of '/' with ','
...
When using 'bestvideo/best,bestaudio', 'bestvideo/best' must be set as the current_selector (instead of appending it to the selectors), otherwise when it gets the ',' it would append 'None' to the selectors.
2015-07-04 21:30:26 +02:00
Jaime Marquínez Ferrándiz
cf2ac6df68
[YoutubeDL] format spec: Fix handling of '+' with '/'
...
'bestvideo+bestaudio/best' was incorrectly interpreted as 'bestvideo+(bestaudio/best)', so it would fail if 'bestaudio' doesn't exist instead of falling back to 'best'.
2015-06-30 19:50:17 +02:00
Jaime Marquínez Ferrándiz
0130afb76e
[YoutubeDL] format spec: allow grouping specifiers with parentheses
2015-06-29 12:46:02 +02:00
Jaime Marquínez Ferrándiz
5acfa126c8
[YoutubeDL] format spec: treat 'all' like a normal specifier
...
So you can use filters with it, for example 'all[width>=400][width<=600]'.
2015-06-28 22:48:02 +02:00
Jaime Marquínez Ferrándiz
67134eaba1
[YoutubeDL] rework how the format spec is processed
...
The spec string is processed using 'tokenize.tokenize' to split it in words and operators, the filters are still processed using regular expressions.
This should make easier to allow grouping operators with parens.
2015-06-28 22:31:35 +02:00
Jaime Marquínez Ferrándiz
e9eaf3fbcf
[test/YoutubeDL] Add tests for 'playliststart', 'playlistend' and 'playlist_items'
2015-05-15 14:08:26 +02:00
Jaime Marquínez Ferrándiz
8dd5418803
Make 'best' format only match non-DASH formats ( closes #5554 )
...
Otherwise it's impossible to only download non-DASH formats, for example `best[height=?480]/best` would download a DASH video if it's the only one with height=480, instead for falling back to the second format specifier.
For audio only urls (soundcloud, bandcamp ...), the best audio will be downloaded as before.
2015-04-29 22:53:18 +02:00
Jaime Marquínez Ferrándiz
9f3fa89f7c
Remove the --max-quality option
...
It doesn't work well with 'bestvideo' and 'bestaudio' because they are usually before the max quality.
Format filters should be used instead, they are more flexible and don't require the requested quality to exist for each video.
2015-04-25 11:59:54 +02:00
Jaime Marquínez Ferrándiz
592e97e855
Postprocessors: use a list for the files that can be deleted
...
We could only know if we had to delete the original file, but this system allows to specify us more files (like subtitles).
2015-04-18 11:36:42 +02:00
Jaime Marquínez Ferrándiz
531980d89c
[test/YoutubeDL] test match_filter
2015-03-20 17:05:28 +01:00
Jaime Marquínez Ferrándiz
f20bf146e2
[test/YoutubeDL] split in two classes
...
The name was misleading
2015-03-20 15:14:25 +01:00
Jaime Marquínez Ferrándiz
8508557e77
[test/YoutubeDL] Use valid urls
...
It failed on python 3.4 when building the http_headers field
2015-03-14 20:51:42 +01:00
Jaime Marquínez Ferrándiz
98c70d6fc7
[YoutubeDL] only add normal subtitles to the 'requested_subtitles' field if 'writesubtitles' is True
2015-02-22 11:37:27 +01:00
Jaime Marquínez Ferrándiz
ab84349b16
[test/YoutubeDL] Add test for subtitles
...
Updated the offlinetest make target to not skip it
2015-02-22 11:29:56 +01:00
Jaime Marquínez Ferrándiz
0161353d7d
[test/test_YoutubeDL] Remove debug print call
2015-02-06 23:58:01 +01:00
Jaime Marquínez Ferrándiz
2b4ecde2c8
[test/YoutubeDL] Add a simple test for postprocesors
...
Just checks that the 'keepvideo' option works as intended.
2015-02-06 23:54:25 +01:00
Philipp Hagemeister
083c9df93b
[YoutubeDL] Allow filtering by properties ( Fixes #4584 )
2015-01-23 00:04:05 +01:00
Philipp Hagemeister
0217c78377
[YoutubeDL] Allow selection by more extensions
2015-01-08 16:14:50 +01:00
Philipp Hagemeister
c11125f9ed
[tests] Remove format 138 from tests ( #4559 )
2015-01-04 02:06:53 +01:00
Jouke Waleson
5f6a1245ff
PEP8 applied
2014-11-23 20:41:03 +01:00
Philipp Hagemeister
a053c3493a
[test_YoutubeDL] Reorder formats ( #3542 )
2014-08-22 03:44:30 +02:00
codesparkle
1c783bca88
fixed (what I assume was a typo) that caused test_format_note to always fail.
...
This test was introduced in c57f775710
.
2014-05-21 18:03:17 +10:00
Philipp Hagemeister
c57f775710
[YoutubeDL] Add simple tests for format_note ( Closes #2825 )
2014-04-30 02:02:41 +02:00
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.
2014-04-04 01:45:49 +02:00
Jaime Marquínez Ferrándiz
bc6d597828
Add bestvideo and worstvideo to special format names ( #2163 )
2014-03-14 17:01:47 +01:00
Philipp Hagemeister
8908741806
Use unicode_literals in test_YoutubeDL
2014-01-22 14:48:02 +01:00
Philipp Hagemeister
ba7678f9cc
Add -f bestaudio ( Fixes #2163 )
2014-01-22 14:47:29 +01:00
Philipp Hagemeister
3d4a70b821
Add more tests for format selection
2013-12-24 12:33:33 +01:00
Philipp Hagemeister
8e3e03229e
[YoutubeDL] fix tests ( Closes #2036 )
2013-12-23 13:51:56 +01:00
Jaime Marquínez Ferrándiz
26e6393134
Set 'NA' as the default value for missing fields in the output template ( fixes #1931 )
...
Remove the `except KeyError` clause, it won't get raised anymore
2013-12-09 22:00:42 +01:00
Jaime Marquínez Ferrándiz
b6c45014ae
Set the extra_info inside YoutubeDL.process_ie_result and set only if the keys are missing
2013-11-03 11:57:04 +01:00
Philipp Hagemeister
646e17a53d
Fix YouTubeDL test
2013-10-28 23:18:13 +01:00
Jaime Marquínez Ferrándiz
49e86983e7
Allow to use the extension for the format selection
...
The best format with the extension is downloaded.
2013-10-21 13:31:55 +02:00
Jaime Marquínez Ferrándiz
a9c58ad945
Accept requested formats to be in the format 35/best ( closes #1552 )
...
The format selection code is now an independent function.
2013-10-21 13:19:58 +02:00
Philipp Hagemeister
f4d96df0f1
Extend #980 with --max-quality support
2013-10-18 00:46:35 +02:00
Philipp Hagemeister
5d254f776a
Fix test
2013-10-18 00:27:51 +02:00
Jaime Marquínez Ferrándiz
e028d0d1e3
Implement the prefer_free_formats in YoutubeDL
2013-10-11 16:34:49 +02:00