Beispiel #1
0
 def get_hls_url(self, release_url):
     with requests_cache.disabled():
         doc = grab_xml("https:" + release_url.replace("http:", "").replace("https:", ""))
         video = doc.xpath("//smil:video", namespaces=NS)
         if not video:
             return
         video_url = video[0].attrib["src"]
         return video_url
Beispiel #2
0
 def get_auth_details(self):
     auth_doc = grab_xml(AUTH_URL, 0)
     NS = {
         "auth": "http://www.abc.net.au/iView/Services/iViewHandshaker",
     }
     token = auth_doc.xpath("//auth:tokenhd/text()", namespaces=NS)[0]
     token_url = auth_doc.xpath("//auth:server/text()", namespaces=NS)[0]
     token_hostname = urllib.parse.urlparse(token_url).netloc
     return token, token_hostname
Beispiel #3
0
    def download(self):
        doc = grab_html(VIDEO_URL % self.video_id, 0)
        player_params = self.get_player_params(doc)
        release_url = player_params["releaseUrls"]["html"]

        doc = grab_xml(release_url, 0)
        video = doc.xpath("//smil:video", namespaces=NS)[0]
        video_url = video.attrib["src"]
        if not video_url:
            raise Exception("Unsupported video %s: %s" % (self.video_id, self.title))
        filename = self.title + ".ts"
        return download_hls(filename, video_url)
Beispiel #4
0
    def download(self):
        doc = grab_html(VIDEO_URL % self.video_id, 0)
        player_params = self.get_player_params(doc)
        release_url = player_params["releaseUrls"]["html"]

        doc = grab_xml(release_url, 0)
        video = doc.xpath("//smil:video", namespaces=NS)[0]
        video_url = video.attrib["src"]
        if not video_url:
            raise Exception("Unsupported video %s: %s" %
                            (self.video_id, self.title))
        filename = self.title + ".ts"
        return download_hls(filename, video_url)