diff options
| author | Filippo Valsorda <filippo.valsorda@gmail.com> | 2012-05-09 14:47:28 +0200 | 
|---|---|---|
| committer | Filippo Valsorda <filippo.valsorda@gmail.com> | 2012-05-09 14:47:28 +0200 | 
| commit | 2c288bda4235bed6927d88d9bf53ecaec18f7904 (patch) | |
| tree | c5f4ca39348f1d54bcb4578b81fd44ddc87154f6 /youtube_dl/utils.py | |
| parent | 0b8c922da91fb7238ea15434d6a4792da84015bf (diff) | |
reorganized the titles sanitizing: now title is the untouched title
and stitle is created in process_info() and is cross-filesystem sanitized by sanitize_filename();
closes #164
Diffstat (limited to 'youtube_dl/utils.py')
| -rw-r--r-- | youtube_dl/utils.py | 18 | 
1 files changed, 8 insertions, 10 deletions
| diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index d18073d72..ae30da53e 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -156,12 +156,6 @@ def clean_html(html):  	return html -def sanitize_title(utitle): -	"""Sanitizes a video title so it could be used as part of a filename.""" -	utitle = unescapeHTML(utitle) -	return utitle.replace(unicode(os.sep), u'%') - -  def sanitize_open(filename, open_mode):  	"""Try to open the given filename, and slightly tweak it if this fails. @@ -196,10 +190,14 @@ def timeconvert(timestr):  	if timetuple is not None:  		timestamp = email.utils.mktime_tz(timetuple)  	return timestamp - -def simplify_title(title): -	expr = re.compile(ur'[^\w\d_\-]+', flags=re.UNICODE) -	return expr.sub(u'_', title).strip(u'_') +	 +def sanitize_filename(s): +	"""Sanitizes a string so it could be used as part of a filename.""" +	def replace_insane(char): +		if char in u' .\\/|?*<>:"' or ord(char) < 32: +			return '_' +		return char +	return u''.join(map(replace_insane, s)).strip('_')  def orderedSet(iterable):  	""" Remove all duplicates from the input iterable """ | 
