about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Garcia <sarbalap+freshmeat@gmail.com>2010-11-19 18:30:58 +0100
committerRicardo Garcia <sarbalap+freshmeat@gmail.com>2010-11-19 18:30:58 +0100
commitb04bb07c94675fb8c50a6dbdc79ee49643defa13 (patch)
treeba9ab534c71f2035096a4126f9cbefb3c6fee8d6
parentb620a5f811d94a0296a9809391e3a121ad8d68e9 (diff)
parentb3a27b52171761e23060d6dbd7183359d0bad650 (diff)
downloadyoutube-dl-b04bb07c94675fb8c50a6dbdc79ee49643defa13.tar.gz
youtube-dl-b04bb07c94675fb8c50a6dbdc79ee49643defa13.tar.xz
youtube-dl-b04bb07c94675fb8c50a6dbdc79ee49643defa13.zip
Merge branch 'master' of https://github.com/psi-neamf/youtube-dl into psi-neamf
-rw-r--r--youtube-dl20
1 files changed, 20 insertions, 0 deletions
diff --git a/youtube-dl b/youtube-dl
index 6a888cc3f..e164d5c8c 100644
--- a/youtube-dl
+++ b/youtube-dl
@@ -5,6 +5,7 @@
 # Author: Benjamin Johnson
 # License: Public domain code
 import cookielib
+import datetime
 import htmlentitydefs
 import httplib
 import locale
@@ -894,6 +895,18 @@ class YoutubeIE(InfoExtractor):
 		else:	# don't panic if we can't find it
 			video_thumbnail = urllib.unquote_plus(video_info['thumbnail_url'][0])
 
+		# upload date
+		upload_date = u'NA'
+		mobj = re.search(r'id="eow-date".*?>(.*?)</span>', video_webpage, re.DOTALL)
+		if mobj is not None:
+			upload_date = mobj.group(1).split()
+			format_expressions = ['%d %B %Y', '%B %d, %Y']
+			for expression in format_expressions:
+				try:
+					upload_date = datetime.datetime.strptime(upload_date, expression).strftime('%Y%m%d')
+				except:
+					pass
+
 		# description
 		video_description = 'No description available.'
 		if self._downloader.params.get('forcedescription', False):
@@ -948,6 +961,7 @@ class YoutubeIE(InfoExtractor):
 					'id':		video_id.decode('utf-8'),
 					'url':		video_real_url.decode('utf-8'),
 					'uploader':	video_uploader.decode('utf-8'),
+					'uploaddate':	upload_date,
 					'title':	video_title,
 					'stitle':	simple_title,
 					'ext':		video_extension.decode('utf-8'),
@@ -1094,6 +1108,7 @@ class MetacafeIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url.decode('utf-8'),
 				'uploader':	video_uploader.decode('utf-8'),
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),
@@ -1182,6 +1197,7 @@ class DailymotionIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url.decode('utf-8'),
 				'uploader':	video_uploader.decode('utf-8'),
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),
@@ -1291,6 +1307,7 @@ class GoogleIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url.decode('utf-8'),
 				'uploader':	u'NA',
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),
@@ -1372,6 +1389,7 @@ class PhotobucketIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url.decode('utf-8'),
 				'uploader':	video_uploader,
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),
@@ -1526,6 +1544,7 @@ class YahooIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url,
 				'uploader':	video_uploader,
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),
@@ -1628,6 +1647,7 @@ class GenericIE(InfoExtractor):
 				'id':		video_id.decode('utf-8'),
 				'url':		video_url.decode('utf-8'),
 				'uploader':	video_uploader,
+				'uploaddate':	u'NA',
 				'title':	video_title,
 				'stitle':	simple_title,
 				'ext':		video_extension.decode('utf-8'),