Browse Source

Merge pull request #1267 from Rudloff/master

Download videos from jeuxvideo.com

Edited to keep the file 'youtube-dl' unchanged.
master
Jaime Marquínez Ferrándiz 11 years ago
parent
commit
8403612258
2 changed files with 34 additions and 0 deletions
  1. 1
      youtube_dl/extractor/__init__.py
  2. 33
      youtube_dl/extractor/jeuxvideo.py

1
youtube_dl/extractor/__init__.py

@ -36,6 +36,7 @@ from .ign import IGNIE, OneUPIE
from .ina import InaIE
from .infoq import InfoQIE
from .instagram import InstagramIE
from .jeuxvideo import JeuxVideoIE
from .jukebox import JukeboxIE
from .justintv import JustinTVIE
from .kankan import KankanIE

33
youtube_dl/extractor/jeuxvideo.py

@ -0,0 +1,33 @@
import json
import re
from .common import InfoExtractor
class JeuxVideoIE(InfoExtractor):
_VALID_URL = r'http://.*?\.jeuxvideo\.com/.*/(.*?)-\d+\.htm'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
title = re.match(self._VALID_URL, url).group(1)
webpage = self._download_webpage(url, title)
m_download = re.search(r'<param name="flashvars" value="config=(.*?)" />', webpage)
xml_link = m_download.group(1)
id = re.search(r'http://www.jeuxvideo.com/config/\w+/0011/(.*?)/\d+_player\.xml', xml_link).group(1)
xml_config = self._download_webpage(xml_link, title,
'Downloading XML config')
info = re.search(r'<format\.json>(.*?)</format\.json>',
xml_config, re.MULTILINE|re.DOTALL).group(1)
info = json.loads(info)['versions'][0]
video_url = 'http://video720.jeuxvideo.com/' + info['file']
track_info = {'id':id,
'title' : title,
'ext' : 'mp4',
'url' : video_url
}
return [track_info]
Loading…
Cancel
Save