дарк-форумы + cookie-проход CF + opt_in радара в обходе
- omni/sources_dark.py: cracked.st, nulledbb, forum.tuts4you — реально отдают темы без логина - tools/cf_cookies.py: Camoufox снимает cookies с JS-челленджей в data/cookies.json (вне git) - config: cookies.json подхватывается автоматически - feeds: include_contains матчится по полному href (showthread.php?tid= не резался по path) - sources_abuse/abuse_sources: A(extra=...) + tuts4you на html_listing (/topic/) - sources: _gen_sources() = китайские + дарк наборы - README: ключи/радар/китайцы/дарк
This commit is contained in:
@@ -245,18 +245,19 @@ def radar_sources():
|
||||
return rows
|
||||
|
||||
|
||||
def _cn_sources():
|
||||
"""Китайские/азиатские источники из сгенерированного omni/sources_cn.py."""
|
||||
try:
|
||||
from .sources_cn import CN
|
||||
except Exception:
|
||||
return []
|
||||
def _gen_sources():
|
||||
"""Сгенерированные наборы: китайские (sources_cn) + дарк-форумы (sources_dark)."""
|
||||
out = []
|
||||
for d in CN:
|
||||
for mod, attr in (("sources_cn", "CN"), ("sources_dark", "DARK")):
|
||||
try:
|
||||
out.append(Source(**d))
|
||||
rows = getattr(__import__("omni." + mod, fromlist=[attr]), attr)
|
||||
except Exception:
|
||||
continue
|
||||
for d in rows:
|
||||
try:
|
||||
out.append(Source(**d))
|
||||
except Exception:
|
||||
continue
|
||||
return out
|
||||
|
||||
|
||||
@@ -271,7 +272,7 @@ def all_sources():
|
||||
("name", "category", "kind", "url", "adapter", "tags", "limit", "detail", "extra")}
|
||||
extra.append(Source(**d))
|
||||
seen, out = set(), []
|
||||
for s in SOURCES + _cn_sources() + extra + radar_sources():
|
||||
for s in SOURCES + _gen_sources() + extra + radar_sources():
|
||||
key = (s.url or "").rstrip("/").lower()
|
||||
if key and key in seen:
|
||||
continue
|
||||
|
||||
Reference in New Issue
Block a user