Browse Source

Move FunnyOrDie into its own file

rtmp_test
Philipp Hagemeister 12 years ago
parent
commit
8f0578f0fc
2 changed files with 35 additions and 28 deletions
  1. +1
    -28
      youtube_dl/InfoExtractors.py
  2. +34
    -0
      youtube_dl/extractor/funnyordie.py

+ 1
- 28
youtube_dl/InfoExtractors.py View File

@ -27,6 +27,7 @@ from .extractor.dailymotion import DailymotionIE
from .extractor.depositfiles import DepositFilesIE from .extractor.depositfiles import DepositFilesIE
from .extractor.escapist import EscapistIE from .extractor.escapist import EscapistIE
from .extractor.facebook import FacebookIE from .extractor.facebook import FacebookIE
from .extractor.funnyordie import FunnyOrDieIE
from .extractor.gametrailers import GametrailersIE from .extractor.gametrailers import GametrailersIE
from .extractor.generic import GenericIE from .extractor.generic import GenericIE
from .extractor.googleplus import GooglePlusIE from .extractor.googleplus import GooglePlusIE
@ -197,34 +198,6 @@ class JustinTVIE(InfoExtractor):
offset += limit offset += limit
return info return info
class FunnyOrDieIE(InfoExtractor):
_VALID_URL = r'^(?:https?://)?(?:www\.)?funnyordie\.com/videos/(?P<id>[0-9a-f]+)/.*$'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
if mobj is None:
raise ExtractorError(u'invalid URL: %s' % url)
video_id = mobj.group('id')
webpage = self._download_webpage(url, video_id)
video_url = self._html_search_regex(r'<video[^>]*>\s*<source[^>]*>\s*<source src="(?P<url>[^"]+)"',
webpage, u'video URL', flags=re.DOTALL)
title = self._html_search_regex((r"<h1 class='player_page_h1'.*?>(?P<title>.*?)</h1>",
r'<title>(?P<title>[^<]+?)</title>'), webpage, 'title', flags=re.DOTALL)
video_description = self._html_search_regex(r'<meta property="og:description" content="(?P<desc>.*?)"',
webpage, u'description', fatal=False, flags=re.DOTALL)
info = {
'id': video_id,
'url': video_url,
'ext': 'mp4',
'title': title,
'description': video_description,
}
return [info]
class UstreamIE(InfoExtractor): class UstreamIE(InfoExtractor):


+ 34
- 0
youtube_dl/extractor/funnyordie.py View File

@ -0,0 +1,34 @@
import re
from .common import InfoExtractor
from ..utils import (
ExtractorError,
)
class FunnyOrDieIE(InfoExtractor):
_VALID_URL = r'^(?:https?://)?(?:www\.)?funnyordie\.com/videos/(?P<id>[0-9a-f]+)/.*$'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id')
webpage = self._download_webpage(url, video_id)
video_url = self._html_search_regex(r'<video[^>]*>\s*<source[^>]*>\s*<source src="(?P<url>[^"]+)"',
webpage, u'video URL', flags=re.DOTALL)
title = self._html_search_regex((r"<h1 class='player_page_h1'.*?>(?P<title>.*?)</h1>",
r'<title>(?P<title>[^<]+?)</title>'), webpage, 'title', flags=re.DOTALL)
video_description = self._html_search_regex(r'<meta property="og:description" content="(?P<desc>.*?)"',
webpage, u'description', fatal=False, flags=re.DOTALL)
info = {
'id': video_id,
'url': video_url,
'ext': 'mp4',
'title': title,
'description': video_description,
}
return [info]

Loading…
Cancel
Save