aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/extractor
diff options
context:
space:
mode:
authorTjark Saul <tjark.saul@wachplan.net>2015-04-17 09:21:54 +0200
committerTjark Saul <tjark.saul@wachplan.net>2015-04-17 09:21:54 +0200
commitf11554092b419baa919875432fe6ebc1f22f5307 (patch)
treede99112d44737084b50be462d4252483dca9fec2 /youtube_dl/extractor
parent8da1bb04186d4147f89923abc09a9db0fa2a4fec (diff)
[Lecture2Go] Add new extractor
Diffstat (limited to 'youtube_dl/extractor')
-rw-r--r--youtube_dl/extractor/__init__.py1
-rw-r--r--youtube_dl/extractor/lecture2go.py33
2 files changed, 34 insertions, 0 deletions
diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py
index bbf3be41d..3d6e981b2 100644
--- a/youtube_dl/extractor/__init__.py
+++ b/youtube_dl/extractor/__init__.py
@@ -249,6 +249,7 @@ from .krasview import KrasViewIE
from .ku6 import Ku6IE
from .la7 import LA7IE
from .laola1tv import Laola1TvIE
+from .lecture2go import Lecture2GoIE
from .letv import (
LetvIE,
LetvTvIE,
diff --git a/youtube_dl/extractor/lecture2go.py b/youtube_dl/extractor/lecture2go.py
new file mode 100644
index 000000000..9cf28e31c
--- /dev/null
+++ b/youtube_dl/extractor/lecture2go.py
@@ -0,0 +1,33 @@
+# coding: utf-8
+from __future__ import unicode_literals
+
+from .common import InfoExtractor
+
+
+class Lecture2GoIE(InfoExtractor):
+ _VALID_URL = r'https?://lecture2go.uni-hamburg.de/veranstaltungen/-/v/(?P<id>[0-9]+)'
+ _TEST = {
+ 'url': 'https://lecture2go.uni-hamburg.de/veranstaltungen/-/v/17473',
+ 'md5': 'a9e76f83b3ef58019c4b7dbc35f406c1',
+ 'info_dict': {
+ 'id': '17473',
+ 'ext': 'mp4',
+ 'url': 'https://fms1.rrz.uni-hamburg.de/abo/64.050_FrankHeitmann_2015-04-13_14-35.mp4',
+ 'title': '2 - Endliche Automaten und reguläre Sprachen'
+ }
+ }
+
+ def _real_extract(self, url):
+ video_id = self._match_id(url)
+ webpage = self._download_webpage(url, video_id)
+
+ title = self._html_search_regex(r'<em class="title">(.*?)</em>', webpage, 'title')
+ video_url = self._search_regex(r'b.isFirefox..a.useHTML5\).b.setOption.a,"src","(.*.mp4)"\).else', webpage, 'video_url')
+ creator = self._html_search_regex(r'<div id="description">(.*)</div>', webpage, 'creator')
+
+ return {
+ 'id': video_id,
+ 'title': title,
+ 'url': video_url,
+ 'creator': creator
+ }