Browse Source

[oe1] Add support for oe1.orf.at.

totalwebcasting
phaer 11 years ago
parent
commit
f0da3f1ef9
2 changed files with 39 additions and 0 deletions
  1. +1
    -0
      youtube_dl/extractor/__init__.py
  2. +38
    -0
      youtube_dl/extractor/oe1.py

+ 1
- 0
youtube_dl/extractor/__init__.py View File

@ -177,6 +177,7 @@ from .normalboots import NormalbootsIE
from .novamov import NovaMovIE
from .nowness import NownessIE
from .nowvideo import NowVideoIE
from .oe1 import OE1IE
from .ooyala import OoyalaIE
from .orf import ORFIE
from .parliamentliveuk import ParliamentLiveUKIE


+ 38
- 0
youtube_dl/extractor/oe1.py View File

@ -0,0 +1,38 @@
# coding: utf-8
from __future__ import unicode_literals
import calendar
import datetime
import json
import re
from .common import InfoExtractor
# audios on oe1.orf.at are only available for 7 days, so we can't
# add tests.
class OE1IE(InfoExtractor):
_VALID_URL = r'http://oe1\.orf\.at/programm/(?P<id>\d+)'
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
show_id = mobj.group('id')
data = json.loads(self._download_webpage(
'http://oe1.orf.at/programm/%s/konsole' % show_id,
show_id
))
timestamp = datetime.datetime.strptime('%s %s' % (
data['item']['day_label'],
data['item']['time']
), '%d.%m.%Y %H:%M')
unix_timestamp = calendar.timegm(timestamp.utctimetuple())
return {
'id': show_id,
'title': data['item']['title'],
'url': data['item']['url_stream'],
'ext': 'mp3',
'description': data['item']['info'],
'timestamp': unix_timestamp
}

Loading…
Cancel
Save