aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Hagemeister <phihag@phihag.de>2015-03-13 08:40:20 +0100
committerPhilipp Hagemeister <phihag@phihag.de>2015-03-13 08:40:20 +0100
commit486dd09e0bd8032a3234363231c2b592f725cad6 (patch)
treed67df7fce2ffff134a42ca9691f8c77eca7e50a1
parent054b99a33079dcc4755e46aaf588424b4bb12020 (diff)
downloadyoutube-dl-486dd09e0bd8032a3234363231c2b592f725cad6.tar.xz
[YoutubeDL] Check for bytes instead of unicode output templates (#5192)
Also adapt the embedding examples for those poor souls still using 2.x.
-rw-r--r--README.md2
-rwxr-xr-xyoutube_dl/YoutubeDL.py5
2 files changed, 7 insertions, 0 deletions
diff --git a/README.md b/README.md
index f41e7ecee..f4fbf0034 100644
--- a/README.md
+++ b/README.md
@@ -515,6 +515,7 @@ youtube-dl makes the best effort to be a good command-line program, and thus sho
From a Python program, you can embed youtube-dl in a more powerful fashion, like this:
```python
+from __future__ import unicode_literals
import youtube_dl
ydl_opts = {}
@@ -527,6 +528,7 @@ Most likely, you'll want to use various options. For a list of what can be done,
Here's a more complete example of a program that outputs only errors (and a short message after the download is finished), and downloads/converts the video to an mp3 file:
```python
+from __future__ import unicode_literals
import youtube_dl
diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py
index be5b3c1ab..e779fc9a8 100755
--- a/youtube_dl/YoutubeDL.py
+++ b/youtube_dl/YoutubeDL.py
@@ -323,6 +323,11 @@ class YoutubeDL(object):
'Set the LC_ALL environment variable to fix this.')
self.params['restrictfilenames'] = True
+ if isinstance(params.get('outtmpl'), bytes):
+ self.report_warning(
+ 'Parameter outtmpl is bytes, but should be a unicode string. '
+ 'Put from __future__ import unicode_literals at the top of your code file or consider switching to Python 3.x.')
+
if '%(stitle)s' in self.params.get('outtmpl', ''):
self.report_warning('%(stitle)s is deprecated. Use the %(title)s and the --restrict-filenames flag(which also secures %(uploader)s et al) instead.')