Merge remote-tracking branch 'rzhxeo/crunchyroll'
[youtube-dl] / youtube_dl / extractor / justintv.py
index b2006e33499a31096d516b88e01c9f81f14392a6..e9bde0c186a76e0546f97cdb08bf69e2b80b3e93 100644 (file)
@@ -1,7 +1,6 @@
 import json
 import os
 import re
-import xml.etree.ElementTree
 
 from .common import InfoExtractor
 from ..utils import (
@@ -26,6 +25,17 @@ class JustinTVIE(InfoExtractor):
         """
     _JUSTIN_PAGE_LIMIT = 100
     IE_NAME = u'justin.tv'
+    _TEST = {
+        u'url': u'http://www.twitch.tv/thegamedevhub/b/296128360',
+        u'file': u'296128360.flv',
+        u'md5': u'ecaa8a790c22a40770901460af191c9a',
+        u'info_dict': {
+            u"upload_date": u"20110927", 
+            u"uploader_id": 25114803, 
+            u"uploader": u"thegamedevhub", 
+            u"title": u"Beginner Series - Scripting With Python Pt.1"
+        }
+    }
 
     def report_download_page(self, channel, offset):
         """Report attempt to download a single page of videos."""
@@ -83,10 +93,9 @@ class JustinTVIE(InfoExtractor):
             archive_id = m.group(1)
 
             api = api_base + '/broadcast/by_chapter/%s.xml' % chapter_id
-            chapter_info_xml = self._download_webpage(api, chapter_id,
+            doc = self._download_xml(api, chapter_id,
                                              note=u'Downloading chapter information',
                                              errnote=u'Chapter information download failed')
-            doc = xml.etree.ElementTree.fromstring(chapter_info_xml)
             for a in doc.findall('.//archive'):
                 if archive_id == a.find('./id').text:
                     break