瀏覽代碼

[comedycentral] Duration can now be a float (Fixes #2647)

Philipp Hagemeister 11 年之前
父節點
當前提交
43f775e4ca
共有 2 個文件被更改,包括 6 次插入2 次删除
  1. 2 2
      youtube_dl/extractor/comedycentral.py
  2. 4 0
      youtube_dl/utils.py

+ 2 - 2
youtube_dl/extractor/comedycentral.py

@@ -8,7 +8,7 @@ from ..utils import (
     compat_str,
     compat_str,
     compat_urllib_parse,
     compat_urllib_parse,
     ExtractorError,
     ExtractorError,
-    int_or_none,
+    float_or_none,
     unified_strdate,
     unified_strdate,
 )
 )
 
 
@@ -159,7 +159,7 @@ class ComedyCentralShowsIE(InfoExtractor):
             thumbnail = itemEl.find('.//{http://search.yahoo.com/mrss/}thumbnail').attrib.get('url')
             thumbnail = itemEl.find('.//{http://search.yahoo.com/mrss/}thumbnail').attrib.get('url')
 
 
             content = itemEl.find('.//{http://search.yahoo.com/mrss/}content')
             content = itemEl.find('.//{http://search.yahoo.com/mrss/}content')
-            duration = int_or_none(content.attrib.get('duration'))
+            duration = float_or_none(content.attrib.get('duration'))
             mediagen_url = content.attrib['url']
             mediagen_url = content.attrib['url']
             guid = itemEl.find('.//guid').text.rpartition(':')[-1]
             guid = itemEl.find('.//guid').text.rpartition(':')[-1]
 
 

+ 4 - 0
youtube_dl/utils.py

@@ -1181,6 +1181,10 @@ def int_or_none(v, scale=1):
     return v if v is None else (int(v) // scale)
     return v if v is None else (int(v) // scale)
 
 
 
 
+def float_or_none(v, scale=1):
+    return v if v is None else (float(v) / scale)
+
+
 def parse_duration(s):
 def parse_duration(s):
     if s is None:
     if s is None:
         return None
         return None