X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Futils.py;h=a509f8e2f1b667ac43910b72bf4e30b27e64c355;hb=5f263296eaa72ddca232d734a2625bcd85771908;hp=536504e7e04f7e2925539750618980804ec7a7cd;hpb=67c20aebb77ead363fc5386f073cdc64fbd451ce;p=youtube-dl diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index 536504e7e..a509f8e2f 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -764,6 +764,7 @@ def unified_strdate(date_str): '%Y-%m-%d', '%d/%m/%Y', '%Y/%m/%d %H:%M:%S', + '%Y-%m-%d %H:%M:%S', '%d.%m.%Y %H:%M', '%Y-%m-%dT%H:%M:%SZ', '%Y-%m-%dT%H:%M:%S.%fZ', @@ -817,6 +818,15 @@ def date_from_str(date_str): return today + delta return datetime.datetime.strptime(date_str, "%Y%m%d").date() +def hyphenate_date(date_str): + """ + Convert a date in 'YYYYMMDD' format to 'YYYY-MM-DD' format""" + match = re.match(r'^(\d\d\d\d)(\d\d)(\d\d)$', date_str) + if match is not None: + return '-'.join(match.groups()) + else: + return date_str + class DateRange(object): """Represents a time interval between two dates""" def __init__(self, start=None, end=None): @@ -1026,9 +1036,9 @@ def smuggle_url(url, data): return url + u'#' + sdata -def unsmuggle_url(smug_url): +def unsmuggle_url(smug_url, default=None): if not '#__youtubedl_smuggle' in smug_url: - return smug_url, None + return smug_url, default url, _, sdata = smug_url.rpartition(u'#') jsond = compat_parse_qs(sdata)[u'__youtubedl_smuggle'][0] data = json.loads(jsond)