コード例 #1
0
 def __parse_streams(self, iframe_url, page_url):
     headers = {'Referer': page_url}
     html = self._http_get(iframe_url, headers=headers, cache_limit=.5)
     if jsunpack.detect(html):
         html = jsunpack.unpack(html)
     
     return scraper_utils.parse_sources_list(self, html)
コード例 #2
0
    def __parse_streams(self, iframe_url, page_url):
        headers = {'Referer': page_url}
        html = self._http_get(iframe_url, headers=headers, cache_limit=.5)
        if jsunpack.detect(html):
            html = jsunpack.unpack(html)

        return scraper_utils.parse_sources_list(self, html)
コード例 #3
0
    def __parse_streams(self, iframe_url, page_url):
        headers = {"Referer": page_url}
        html = self._http_get(iframe_url, headers=headers, cache_limit=0.5)
        if jsunpack.detect(html):
            html = jsunpack.unpack(html)
        log_utils.log(html)

        return self._parse_sources_list(html)
コード例 #4
0
 def __get_links_from_js(self, html, page_url):
     sources = {}
     for src_url in dom_parser.parse_dom(html, 'script', ret='src'):
         if 'slug=' in src_url:
             headers = {'Referer': page_url}
             js_src = self._http_get(src_url, headers=headers, cache_limit=.05)
             if jsunpack.detect(js_src):
                 unpacked_data = jsunpack.unpack(js_src)
             else:
                 unpacked_data = js_src
                 
             match = re.search('"?sourcesPlaylist?"\s*:\s*"([^"]+)', unpacked_data)
             if match:
                 sources.update(self.__get_links_from_playlist(match.group(1), headers))
             else:
                 match = re.search('"?sourcesEmbed?"\s*:\s*"([^"]+)', unpacked_data)
                 if match:
                     embed_url = match.group(1).replace('\\', '')
                     sources[embed_url] = {'quality': QUALITIES.HD720, 'direct': False}
                     
     return sources