Compare commits

..

77 Commits

Author SHA1 Message Date
Philipp Hagemeister
47a53c9e46 release 2012.01.05 2012-01-05 11:08:50 +01:00
Philipp Hagemeister
1413cd87eb Correct distinction between unicode and bytes (Closes: #257) 2012-01-05 10:46:21 +01:00
Philipp Hagemeister
c92e184f75 Correct comedycentral flash URL regex 2012-01-05 00:39:47 +01:00
Philipp Hagemeister
3906e6ce60 correct epydoc 2012-01-05 00:36:47 +01:00
Philipp Hagemeister
c7d3c3db0d Fix tds RTMP url extraction 2012-01-04 14:08:17 +01:00
Philipp Hagemeister
d6639d05c2 release 2011.12.18 2011-12-17 01:35:05 +01:00
Philipp Hagemeister
633cf7cbad Add wav audio output 2011-12-17 01:32:28 +01:00
Philipp Hagemeister
a5647b79ce Only skip download if files exists; convert audio 2011-12-16 23:33:46 +01:00
Philipp Hagemeister
ba5059dd66 Release 2011.12.15 2011-12-15 20:32:37 +01:00
Philipp Hagemeister
bb8abbbbae Dailymotion: Use og:title instead of <title> to find title (Closes: #253) 2011-12-15 20:32:05 +01:00
Philipp Hagemeister
561504fffa Release 2011.12.08 2011-12-08 21:39:13 +01:00
Philipp Hagemeister
23e6b8adc8 --prefer-free-formats (Closes #231) 2011-12-08 21:38:28 +01:00
Philipp Hagemeister
3e0ea7d07a m4a: aac in mp4 container (Closes #240) 2011-12-08 21:21:25 +01:00
Philipp Hagemeister
94fd3201b2 Abort when --max-downloads is reached. 2011-12-08 20:59:02 +01:00
Philipp Hagemeister
0b3f3e1ad9 Merge pull request #245 from rbrito/fix-makefile
Makefile: Don't use `echo`'s `-e` option for portability.
2011-12-08 11:39:56 -08:00
Philipp Hagemeister
a05d2a0c05 Merge branch 'master' of github.com:rg3/youtube-dl 2011-12-08 20:39:22 +01:00
Philipp Hagemeister
0b14e0b367 OpenClassRoom IE (Closes: #234) 2011-12-08 20:36:00 +01:00
Rogério Brito
66e8777769 Makefile: Don't use echo's -e option for portability.
Many systems (including Debian, Ubuntu and derivatives like Linux Mint) use
Dash as a noninteractive version of `/bin/sh`, invoked by `make`.

Dash's `echo` command doesn't understand the `-e` option and this generates
spurious output when running `make`.  See [a bugreport][0] for one of the
many instances of this bug/feature in action.

[0]: https://bugs.launchpad.net/ubuntu/+source/dash/+bug/72167
2011-12-08 13:18:29 -02:00
Philipp Hagemeister
348486ced4 Merge pull request #238 from rbrito/add-to-gitignore
Add list of files to ignore for `youtube-dl`.
2011-11-30 11:45:17 -08:00
Rogério Brito
f1f300e629 Add list of files to ignore for youtube-dl. 2011-11-30 14:17:20 -02:00
Philipp Hagemeister
dd17922afc OpenClassRoom videos (#234) 2011-11-30 10:52:04 +01:00
Philipp Hagemeister
40fd4cb86a Move merged code to dev version 2011-11-30 10:00:36 +01:00
Philipp Hagemeister
9e9b75ae4d Merge pull request #236 from lra/dailymotion-fix
Fix the DailymotionIE to parse the new title of a webpage
2011-11-30 00:57:09 -08:00
Laurent Raufaste
8abf76ddb9 Fix the DailymotionIE to parse the new title of a webpage 2011-11-29 22:30:42 -05:00
Philipp Hagemeister
c95da745bc Mention -o - in doc (Closes #204) 2011-11-29 20:22:27 +01:00
Philipp Hagemeister
0cd235eef6 Use freedesktop.org mandated user config file location (Suggested by Tyll in #231) 2011-11-29 20:13:13 +01:00
Philipp Hagemeister
77315556f1 Do not count unmatched or skipped videos towards max-downloads (Closes #232) 2011-11-29 20:08:01 +01:00
Philipp Hagemeister
c379c181e0 Preliminary implementation of configuration files 2011-11-28 01:29:46 +01:00
Philipp Hagemeister
31a2ec2d88 Document -o %(upload_date)s (Closes #228) 2011-11-28 01:00:01 +01:00
Philipp Hagemeister
b88a52504e --max-downloads option (Closes #230) 2011-11-28 00:55:44 +01:00
Philipp Hagemeister
a95567af99 Credit shizeeg for Mixcloud IE 2011-11-24 18:58:19 +01:00
Philipp Hagemeister
849edab8ec Move MixcloudIE to __init__.py 2011-11-24 18:02:12 +01:00
sh!zeeg
b158a1d946 Mixcloud IE 2011-11-24 20:45:14 +04:00
Philipp Hagemeister
fa2672f9fc Release 2011.11.23 2011-11-23 10:36:52 +01:00
Philipp Hagemeister
28e3614bc0 Fix vimeo error (Closes #224) 2011-11-23 10:35:55 +01:00
Philipp Hagemeister
208e095f72 Correct simplify_title call in ComedyCentral IE 2011-11-22 21:26:38 +01:00
Philipp Hagemeister
0ae7abe57c Release 2011.11.22 2011-11-22 15:32:53 +01:00
Philipp Hagemeister
dc0a294a73 Make exception handling 2.5-compatible (Closes #223) 2011-11-22 15:31:30 +01:00
Philipp Hagemeister
468c99257c Release 2011.11.21 2011-11-21 21:51:24 +01:00
Philipp Hagemeister
af8e8d63f9 Allow non-ASCII characters in simplified titles(Closes #220) 2011-11-21 21:50:39 +01:00
Philipp Hagemeister
e092418d8b Simplify simplify_title 2011-11-21 20:17:07 +01:00
Philipp Hagemeister
e33e3045c6 First tests 2011-11-21 20:07:24 +01:00
Philipp Hagemeister
cb6568bf21 Use the dev version in Makefile 2011-11-21 20:00:54 +01:00
Philipp Hagemeister
235b3ba479 Move code into a separate Python module 2011-11-21 19:59:59 +01:00
Philipp Hagemeister
5b3330e0cf Remove empty real_initialize defs 2011-11-21 19:31:20 +01:00
Philipp Hagemeister
aab771fbdf Credit authors of Soundclound and InfoQ extractors 2011-11-16 09:33:03 +01:00
Philipp Hagemeister
00f95a93f5 InfoQ IE (Closes #216) 2011-11-15 23:00:31 +01:00
Philipp Hagemeister
1724e7c461 Merge remote-tracking branch 'ngokevin/soundcloud' 2011-11-15 22:37:49 +01:00
Ori Avtalion
3b98a5ddac InfoQ IE 2011-11-15 23:20:29 +02:00
Philipp Hagemeister
8b59cc93d5 Merge pull request #211 from techtonik/patch-1
Fix duplicated downloads from YouTube user page where watch URLs are not. Thanks to anatoly techtonik.
2011-11-15 01:39:17 -08:00
Philipp Hagemeister
c3e4e7c182 Fix youtube playlist IE match (Closes: #210) 2011-11-15 10:35:59 +01:00
Kevin Ngo
38348005b3 removed weird indent 2011-11-12 17:28:26 -08:00
Kevin Ngo
208c4b9128 added whitespace below soundcloudIE class 2011-11-12 17:10:21 -08:00
Kevin Ngo
ec574c2c41 extracts full title from source 2011-11-12 17:08:40 -08:00
Kevin Ngo
871be928a8 now downloads soundcloud songs, need to polish title grabbing and file naming 2011-11-12 16:48:43 -08:00
Kevin Ngo
b20d4f8626 changed spaces to tabs (by yt-dl standards), fixed bugs, but still won't download. need to figure out how the whole process works to integrate correctly 2011-11-10 01:04:33 -08:00
Kevin Ngo
073d7a5985 extracted all of the soundcloud information including description (not tested), need to hook into filedownloader 2011-11-09 01:52:36 -08:00
Kevin Ngo
40306424b1 work on soundcloud information extractor...need to talk to youtube-dl guys 2011-11-08 00:03:35 -08:00
Kevin Ngo
ecb3bfe543 going home and need to upload what little i did 2011-11-07 18:02:10 -08:00
anatoly techtonik
abeac45abe Fix duplicated downloads from YouTube user page where watch URLs are not always end with &. Stop scan on closing bracker prevents regexp to capture two links instead of one. 2011-11-06 16:42:43 +03:00
Philipp Hagemeister
0fca93ac60 Merge pull request #206 from rbrito/fixes/facebook-ie-2
FacebookIE: Fix regexp to recognize videos that weren't considered.
2011-11-02 10:56:18 -07:00
Rogério Brito
857e5f329a FacebookIE: Fix regexp to recognize videos that weren't considered. 2011-11-01 12:07:05 -02:00
Rogério Brito
053419cd24 FacebookIE: The date doesn't seem to be available anymore.
The current regular expression is likely to match a lot of stuff, as each
comment that a video has has one of those and it is not clear which one is
the date of the video *upload* itself.
2011-10-20 20:28:34 -02:00
Rogério Brito
99e207bab0 FacebookIE: Fix extraction of title as Facebook has changed stuff. 2011-10-20 20:27:48 -02:00
Rogério Brito
0067bbe7a7 FacebookIE: Not all videos are available in all formats. 2011-10-20 20:26:42 -02:00
Philipp Hagemeister
45aa690868 Release 2011.10.19 2011-10-19 00:40:13 +02:00
Philipp Hagemeister
beb245e92f Merge branch 'vimeo' of https://github.com/rbrito/youtube-dl 2011-10-19 00:38:41 +02:00
Rogério Brito
c424df0d2f vimeo: Add the ability to detect if a video is available in HD. (Closes: #194) 2011-10-19 00:37:45 +02:00
Rogério Brito
87929e4b35 vimeo: Add the ability to detect if a video is available in HD. 2011-10-18 19:47:19 -02:00
Philipp Hagemeister
d76736fc5e Merge pull request #195 from rbrito/xvideos
Fixes for the xvideos IE
2011-10-18 13:49:21 -07:00
Rogério Brito
0f9b77223e xvideos: Capture only the video title, not the name of the site. 2011-10-18 18:42:01 -02:00
Rogério Brito
9f47175a40 xvideos: Fix misleading error message when extracting the URL.
We said that we were trying to extract the title of the video.
2011-10-18 18:41:02 -02:00
Rogério Brito
a1a8713aad xvideos: Normalize the URL or it will fail with some inputs.
For instance, if we give it <www.xvideos.com/video1384059>, we would
end up passing that to urllib2, which would complain about an unknown
URL type.
2011-10-18 18:38:17 -02:00
Rogério Brito
6501a06d46 Quick and dirty IE for xvideos.com. 2011-10-13 16:44:20 -03:00
Philipp Hagemeister
8d89fbae5a CollegeHumor IE 2011-10-12 21:13:43 +02:00
Philipp Hagemeister
7a2cf5455c Fix recognition of http://www.youtube.com/course?list=PL41FDABC6AA085E78&category=University/Mathematics/Topology%20%26%20Geometry 2011-10-04 03:25:20 +02:00
Rogério Brito
7125a7ca8b Support "newstyle" Youtube playlist IDs.
Many playlists reported by Youtube now have the form like in:

    http://www.youtube.com/playlist?list=PL520044A3524F5E5D

where `PL` is prefixed to what youtube-dl used to use as playlist IDs. So,
while matching it, we adapt the regular expression so as to discard the `PL`
and only get the `520044A3524F5E5D` in the case of the playlist of the
example.
2011-10-03 21:41:33 -03:00
8 changed files with 5349 additions and 135 deletions

3
.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
*.pyc
*.pyo
*~

View File

@@ -1 +1 @@
2011.09.30
2012.01.05

View File

@@ -1,20 +1,23 @@
default: update
update: update-readme update-latest
update: compile update-readme update-latest
update-latest:
./youtube-dl --version > LATEST_VERSION
./youtube-dl.dev --version > LATEST_VERSION
update-readme:
@options=$$(COLUMNS=80 ./youtube-dl --help | sed -e '1,/.*General Options.*/ d' -e 's/^\W\{2\}\(\w\)/### \1/') && \
@options=$$(COLUMNS=80 ./youtube-dl.dev --help | sed -e '1,/.*General Options.*/ d' -e 's/^\W\{2\}\(\w\)/### \1/') && \
header=$$(sed -e '/.*## OPTIONS/,$$ d' README.md) && \
footer=$$(sed -e '1,/.*## FAQ/ d' README.md) && \
echo "$${header}" > README.md && \
echo -e '\n## OPTIONS' >> README.md && \
echo >> README.md && \
echo '## OPTIONS' >> README.md && \
echo "$${options}" >> README.md&& \
echo -e '\n## FAQ' >> README.md && \
echo >> README.md && \
echo '## FAQ' >> README.md && \
echo "$${footer}" >> README.md
compile:
cp youtube_dl/__init__.py youtube-dl
.PHONY: default update update-latest update-readme
.PHONY: default compile update update-latest update-readme

View File

@@ -28,6 +28,7 @@ which means you can modify it, redistribute it or use it however you like.
sub-string)
--reject-title REGEX skip download for matching titles (regex or
caseless sub-string)
--max-downloads NUMBER Abort after downloading NUMBER files
### Filesystem Options:
-t, --title use title in file name
@@ -36,8 +37,10 @@ which means you can modify it, redistribute it or use it however you like.
-o, --output TEMPLATE output filename template. Use %(stitle)s to get the
title, %(uploader)s for the uploader name,
%(autonumber)s to get an automatically incremented
number, %(ext)s for the filename extension, and %%
for a literal percent
number, %(ext)s for the filename extension,
%(upload_date)s for the upload date (YYYYMMDD), and
%% for a literal percent. Use - to output to
stdout.
-a, --batch-file FILE file containing URLs to download ('-' for stdin)
-w, --no-overwrites do not overwrite files
-c, --continue resume partially downloaded files
@@ -67,6 +70,8 @@ which means you can modify it, redistribute it or use it however you like.
### Video Format Options:
-f, --format FORMAT video format code
--all-formats download all available video formats
--prefer-free-formats prefer free video formats unless a specific one is
requested
--max-quality FORMAT highest quality format to download
-F, --list-formats list all available formats (currently youtube only)
@@ -78,7 +83,8 @@ which means you can modify it, redistribute it or use it however you like.
### Post-processing Options:
--extract-audio convert video files to audio-only files (requires
ffmpeg and ffprobe)
--audio-format FORMAT "best", "aac", "vorbis" or "mp3"; best by default
--audio-format FORMAT "best", "aac", "vorbis", "mp3", "m4a", or "wav";
best by default
--audio-quality QUALITY ffmpeg audio bitrate specification, 128k by default
-k, --keep-video keeps the video file on disk after the post-
processing; the video is erased by default

29
test/test_div.py Normal file
View File

@@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
# Various small unit tests
import os,sys
sys.path.append(os.path.dirname(os.path.dirname(__file__)))
import youtube_dl
def test_simplify_title():
assert youtube_dl._simplify_title(u'abc') == u'abc'
assert youtube_dl._simplify_title(u'abc_d-e') == u'abc_d-e'
assert youtube_dl._simplify_title(u'123') == u'123'
assert u'/' not in youtube_dl._simplify_title(u'abc/de')
assert u'abc' in youtube_dl._simplify_title(u'abc/de')
assert u'de' in youtube_dl._simplify_title(u'abc/de')
assert u'/' not in youtube_dl._simplify_title(u'abc/de///')
assert u'\\' not in youtube_dl._simplify_title(u'abc\\de')
assert u'abc' in youtube_dl._simplify_title(u'abc\\de')
assert u'de' in youtube_dl._simplify_title(u'abc\\de')
assert youtube_dl._simplify_title(u'ä') == u'ä'
assert youtube_dl._simplify_title(u'кириллица') == u'кириллица'
# Strip underlines
assert youtube_dl._simplify_title(u'\'a_') == u'a'

File diff suppressed because it is too large Load Diff

6
youtube-dl.dev Executable file
View File

@@ -0,0 +1,6 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import youtube_dl
youtube_dl.main()

4523
youtube_dl/__init__.py Executable file

File diff suppressed because it is too large Load Diff