Skip to content

Commit

Permalink
Fix channel settings URL being different for some users
Browse files Browse the repository at this point in the history
  • Loading branch information
DevilXD committed Apr 30, 2024
1 parent 5dea41a commit ab76491
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions channel.py
Original file line number Diff line number Diff line change
Expand Up @@ -223,21 +223,21 @@ async def get_spade_url(self) -> URLType:
For mobile view, spade_url is available immediately from the page, skipping step #2.
"""
SETTINGS_PATTERN: str = (
r'src="(https://static\.twitchcdn\.net/config/settings\.[0-9a-f]{32}\.js)"'
r'src="(https://[\w.]+/config/settings\.[0-9a-f]{32}\.js)"'
)
SPADE_PATTERN: str = (
r'"spade_?url": ?"(https://video-edge-[.\w\-/]+\.ts(?:\?allow_stream=true)?)"'
)
async with self._twitch.request("GET", self.url) as response:
streamer_html: str = await response.text(encoding="utf8")
async with self._twitch.request("GET", self.url) as response1:
streamer_html: str = await response1.text(encoding="utf8")
match = re.search(SPADE_PATTERN, streamer_html, re.I)
if not match:
match = re.search(SETTINGS_PATTERN, streamer_html, re.I)
if not match:
raise MinerException("Error while spade_url extraction: step #1")
streamer_settings = match.group(1)
async with self._twitch.request("GET", streamer_settings) as response:
settings_js: str = await response.text(encoding="utf8")
async with self._twitch.request("GET", streamer_settings) as response2:
settings_js: str = await response2.text(encoding="utf8")
match = re.search(SPADE_PATTERN, settings_js, re.I)
if not match:
raise MinerException("Error while spade_url extraction: step #2")
Expand Down

0 comments on commit ab76491

Please sign in to comment.