from __future__ import annotations from typing import Dict, List from bs4 import BeautifulSoup from ..registry import extractor @extractor def ex_stickers(soup: BeautifulSoup, url: str) -> Dict: """
...
""" root = soup.select_one("div.stickers") if not root: return {"stickers": []} stickers: List[str] = [] seen = set() for sp in root.select("span.sticker"): classes = sp.get("class") or [] extras = [c.strip() for c in classes if c and c.lower() != "sticker"] data_name = (sp.get("data-sticker") or "").strip() if data_name: extras.append(data_name) for x in extras: if x and x not in seen: seen.add(x) stickers.append(x) return {"stickers": stickers}