| 
					
				 | 
			
			
				@@ -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'), 
			 |