mirror of
https://github.com/spaam/svtplay-dl.git
synced 2024-11-27 13:44:14 +01:00
First version of an extractor for regeringen.se
This commit is contained in:
parent
5069e87fbe
commit
bffb6d04bb
36
lib/svtplay_dl/service/regeringen.py
Normal file
36
lib/svtplay_dl/service/regeringen.py
Normal file
@ -0,0 +1,36 @@
|
||||
import html
|
||||
import re
|
||||
|
||||
from svtplay_dl.error import ServiceError
|
||||
from svtplay_dl.fetcher.hls import hlsparse
|
||||
from svtplay_dl.service import Service
|
||||
|
||||
|
||||
class Regeringen(Service):
|
||||
supported_domains_re = ["regeringen.se", "www.regeringen.se"]
|
||||
|
||||
def get(self):
|
||||
res = self.http.get(self.url)
|
||||
html_data = res.text
|
||||
|
||||
match = re.search(r"<title>(.*?) -", html_data)
|
||||
if match:
|
||||
self.output["title"] = html.unescape(match.group(1))
|
||||
|
||||
match = re.search(r"//video.qbrick.com/api/v1/(.*?)'", html_data)
|
||||
if match:
|
||||
result = match.group(1)
|
||||
else:
|
||||
yield ServiceError("Cant find the video.")
|
||||
|
||||
data_url = f"https://video.qbrick.com/api/v1/{result}"
|
||||
|
||||
res = self.http.get(data_url)
|
||||
data = res.json()
|
||||
resources = data["asset"]["resources"]
|
||||
index_resources = [resource for resource in resources if resource["type"] == "index"]
|
||||
links = index_resources[0]["renditions"][0]["links"]
|
||||
hls_url = [link for link in links if "x-mpegURL" in link["mimeType"]][0]["href"]
|
||||
|
||||
if hls_url.find(".m3u8") > 0:
|
||||
yield from hlsparse(self.config, self.http.request("get", hls_url), hls_url, output=self.output)
|
@ -25,6 +25,7 @@ from svtplay_dl.service.plutotv import Plutotv
|
||||
from svtplay_dl.service.pokemon import Pokemon
|
||||
from svtplay_dl.service.radioplay import Radioplay
|
||||
from svtplay_dl.service.raw import Raw
|
||||
from svtplay_dl.service.regeringen import Regeringen
|
||||
from svtplay_dl.service.riksdagen import Riksdagen
|
||||
from svtplay_dl.service.ruv import Ruv
|
||||
from svtplay_dl.service.solidtango import Solidtango
|
||||
@ -84,6 +85,7 @@ sites = [
|
||||
Vimeo,
|
||||
Vg,
|
||||
Youplay,
|
||||
Regeringen,
|
||||
Riksdagen,
|
||||
Raw,
|
||||
]
|
||||
|
Loading…
Reference in New Issue
Block a user