"""xxxfree.watch — direct HTML scrape. Domain: `xxxfree.watch` (sitetag `xxxfreewatch` is legacy from porn-app DEFAULT_SITETAGS). Search: `https://xxxfree.watch/page//?s=`. Scene URL: `https://xxxfree.watch//`. """ from __future__ import annotations import re from app.connectors.direct_scrapers._search_base import BaseSearchScraper class XxxFreeWatchScraper(BaseSearchScraper): sitetag = "xxxfreewatch" _search_url_template = "https://xxxfree.watch/page/{page}/?s={query}" _scene_url_re = re.compile( r'href="(?Phttps://xxxfree\.watch/(?P[a-z0-9][a-z0-9\-]+))/"', re.IGNORECASE, )