ErrorNoCord/sponsorblock.py

24 lines
661 B
Python

import hashlib
import aiohttp
from state import sponsorblock_cache
async def get_segments(videoId: str):
if videoId in sponsorblock_cache:
return sponsorblock_cache[videoId]
hashPrefix = hashlib.sha256(videoId.encode()).hexdigest()[:4]
session = aiohttp.ClientSession()
response = await session.get(
f'https://sponsor.ajay.app/api/skipSegments/{hashPrefix}?categories=["music_offtopic"]'
)
if response.status == 200 and (
results := list(
filter(lambda v: videoId == v["videoID"], await response.json())
)
):
sponsorblock_cache[videoId] = results[0]
return results[0]