feat(x): парсинг X через api.fxtwitter.com — 30 живых хендлов как источники, адаптер x_user, полный текст твитов, метрики; старый syndication-путь (429) убран
This commit is contained in:
53
omni/sources_x.py
Normal file
53
omni/sources_x.py
Normal file
@@ -0,0 +1,53 @@
|
||||
"""X/Twitter источники — читаются без API-ключей через api.fxtwitter.com.
|
||||
|
||||
Адаптер: feeds._x_user -> providers.x.profile(handle).
|
||||
Каждый хендл проверен живым прогоном (>=3 записи). Мёртвые (0 записей) не добавлены.
|
||||
"""
|
||||
|
||||
_X = [
|
||||
# (handle, category, теги)
|
||||
("vxunderground", "abuse", ("malware", "leak")),
|
||||
("malwrhunterteam", "abuse", ("malware", "stealer")),
|
||||
("DailyDarkWeb", "abuse", ("leak", "ransomware")),
|
||||
("DarkWebInformer", "abuse", ("leak", "darkweb")),
|
||||
("abuse_ch", "abuse", ("stealer", "malware")),
|
||||
("H4ckManac", "abuse", ("leak", "breach")),
|
||||
("falconfeedsio", "abuse", ("ransomware", "leak")),
|
||||
("nullcookies", "abuse", ("leak", "fraud")),
|
||||
("TheHackersNews", "security", ("news", "cve")),
|
||||
("BleepinComputer", "security", ("news", "cve")),
|
||||
("campuscodi", "security", ("news", "cve")),
|
||||
("ShadowServer", "security", ("scan", "cve")),
|
||||
("RecordedFuture", "security", ("intel", "cve")),
|
||||
("CISAgov", "security", ("cve", "advisory")),
|
||||
("msftsecintel", "security", ("cve", "advisory")),
|
||||
("Unit42_Intel", "security", ("intel", "cve")),
|
||||
("Mandiant", "security", ("intel", "cve")),
|
||||
("CrowdStrike", "security", ("intel", "cve")),
|
||||
("SentinelOne", "security", ("intel", "cve")),
|
||||
("Kaspersky", "security", ("intel", "cve")),
|
||||
("elasticlabs", "security", ("intel",)),
|
||||
("blackorbird", "security", ("apt", "intel")),
|
||||
("OpenAI", "models", ("model", "release")),
|
||||
("AnthropicAI", "models", ("model", "release")),
|
||||
("deepseek_ai", "models", ("model", "release")),
|
||||
("huggingface", "models", ("model", "dataset")),
|
||||
("AI_News_", "models", ("news", "model")),
|
||||
("karpathy", "community", ("ai", "guide")),
|
||||
("simonw", "community", ("ai", "tool")),
|
||||
("ylecun", "community", ("ai", "news")),
|
||||
]
|
||||
|
||||
X_SOURCES = [
|
||||
{
|
||||
"name": "x_" + h.lower(),
|
||||
"category": cat,
|
||||
"kind": "tweet",
|
||||
"url": "https://x.com/" + h,
|
||||
"adapter": "x_user",
|
||||
"tags": tags,
|
||||
"limit": 15,
|
||||
"extra": {"handle": h},
|
||||
}
|
||||
for h, cat, tags in _X
|
||||
]
|
||||
Reference in New Issue
Block a user