Ejemplo n.º 1
0
def hlsparse(options, res, url):
    streams = {}

    if not res:
        return None

    if res.status_code > 400:
        streams[0] = ServiceError("Can't read HLS playlist. {0}".format(
            res.status_code))
        return streams
    files = (parsem3u(res.text))[1]
    http = HTTP(options)
    for i in files:
        try:
            bitrate = float(i[1]["BANDWIDTH"]) / 1000
        except KeyError:
            streams[0] = ServiceError("Can't read HLS playlist")
            return streams
        urls = _get_full_url(i[0], url)
        res2 = http.get(urls)
        if res2.status_code < 400:
            streams[int(bitrate)] = HLS(copy.copy(options),
                                        urls,
                                        bitrate,
                                        cookies=res.cookies)
    return streams
Ejemplo n.º 2
0
 def __init__(self, options, subtype, url, subfix=None):
     self.url = url
     self.subtitle = None
     self.options = options
     self.subtype = subtype
     self.http = HTTP(options)
     self.subfix = subfix
     self.bom = False
Ejemplo n.º 3
0
 def __init__(self, options, _url):
     self.options = options
     self._url = _url
     self._urldata = None
     self._error = False
     self.subtitle = None
     self.cookies = {}
     self.http = HTTP(options)
Ejemplo n.º 4
0
 def __init__(self, options, url, bitrate=0, **kwargs):
     self.options = options
     self.url = url
     self.bitrate = int(bitrate)
     self.kwargs = kwargs
     self.http = HTTP(options)
     self.finished = False
     self.audio = kwargs.pop("audio", None)
Ejemplo n.º 5
0
 def __init__(self, options, url, bitrate=0, **kwargs):
     self.options = options
     self.url = url
     self.bitrate = int(bitrate)
     self.kwargs = kwargs
     self.http = HTTP(options)
     self.finished = False
     self.audio = kwargs.pop("audio", None)
     self.files = kwargs.pop("files", None)
     self.keycookie = kwargs.pop("keycookie", None)
     self.authorization = kwargs.pop("authorization", None)