mirror of
https://github.com/hotyue/IP-Sentinel.git
synced 2026-07-10 07:01:25 +08:00
Compare commits
344 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
355a79d4e8 | ||
|
|
a5b54f16a4 | ||
|
|
272eda93d3 | ||
|
|
8f0f54ff42 | ||
|
|
3d075cbddd | ||
|
|
fef805bc7c | ||
|
|
81da62feff | ||
|
|
620668ed52 | ||
|
|
b322bec174 | ||
|
|
18281b227d | ||
|
|
62330a8bda | ||
|
|
802cc6c8bc | ||
|
|
2a52728834 | ||
|
|
c8ce305eaa | ||
|
|
b8a8f67cfe | ||
|
|
d598f34d55 | ||
|
|
c7bb1d1b5b | ||
|
|
cebf983381 | ||
|
|
6aeb26616b | ||
|
|
f74074d52a | ||
|
|
139ebfab60 | ||
|
|
4b8785f93c | ||
|
|
57749b0bd9 | ||
|
|
56028bf227 | ||
|
|
613bb69532 | ||
|
|
a4684102b1 | ||
|
|
639c13708b | ||
|
|
d4bfe88290 | ||
|
|
be3bec4c3a | ||
|
|
78b07cbced | ||
|
|
b97c336696 | ||
|
|
1371d6fb50 | ||
|
|
c1dbd453fe | ||
|
|
a9236d2e16 | ||
|
|
0876775ecc | ||
|
|
4175506d1b | ||
|
|
59bdb031d4 | ||
|
|
a4c5f1e0a6 | ||
|
|
47498fd55e | ||
|
|
8f23153ac2 | ||
|
|
63cc4ddbe4 | ||
|
|
48483d0a76 | ||
|
|
a40938746f | ||
|
|
9100a85e5e | ||
|
|
b26f4145bf | ||
|
|
069c590f9e | ||
|
|
a0cba14184 | ||
|
|
a78637d676 | ||
|
|
317b177e83 | ||
|
|
25da2d8848 | ||
|
|
714bd64e7b | ||
|
|
ed09ca5e58 | ||
|
|
e462b94267 | ||
|
|
b120302afd | ||
|
|
49200f77cf | ||
|
|
ce86c1c5e5 | ||
|
|
d22cb98ab8 | ||
|
|
8fa103a62b | ||
|
|
6cf9c91a0c | ||
|
|
b16bdfb68d | ||
|
|
827381dd7a | ||
|
|
3e863285d4 | ||
|
|
4617b7e482 | ||
|
|
2848f39906 | ||
|
|
bcf674ba19 | ||
|
|
25c5ad259b | ||
|
|
2e2e81abd3 | ||
|
|
e627ac47f4 | ||
|
|
f1e35ddc8f | ||
|
|
10c0b75ce6 | ||
|
|
40a41cc9ea | ||
|
|
5ca8a94b5d | ||
|
|
4bc101dd1c | ||
|
|
f3c6b0f23c | ||
|
|
a7556692a5 | ||
|
|
32ce648f6c | ||
|
|
34d7f63e46 | ||
|
|
7296819c00 | ||
|
|
6f5f6c03b8 | ||
|
|
be23f46252 | ||
|
|
d1c24fc08c | ||
|
|
db05446848 | ||
|
|
0efcea7bb4 | ||
|
|
19ff3fe9f5 | ||
|
|
fa7e4f7bd5 | ||
|
|
019e755ebf | ||
|
|
0782487b8a | ||
|
|
56dc23009b | ||
|
|
8a047c34ac | ||
|
|
6bfd4840ff | ||
|
|
f57a4cd9e0 | ||
|
|
4375fac814 | ||
|
|
591100a27f | ||
|
|
58c08213bf | ||
|
|
54839f52d5 | ||
|
|
ed65f412f4 | ||
|
|
f218291720 | ||
|
|
aa4b6d9e6e | ||
|
|
21112796d0 | ||
|
|
c301ba1545 | ||
|
|
fe7910124e | ||
|
|
f418a118e1 | ||
|
|
22c630aa66 | ||
|
|
47a9f28f6f | ||
|
|
4dd325cbf7 | ||
|
|
93a9bcb184 | ||
|
|
a532c9aff3 | ||
|
|
1482fc3934 | ||
|
|
2b1ca3f644 | ||
|
|
2b89988121 | ||
|
|
46ea70eab4 | ||
|
|
789bea25ef | ||
|
|
ea855d7eae | ||
|
|
eb9d2b0d8b | ||
|
|
313200e003 | ||
|
|
0f7b6c9e6d | ||
|
|
0740e08777 | ||
|
|
a537d9ec81 | ||
|
|
8a5dc41d35 | ||
|
|
7dac902acb | ||
|
|
e1fc68f6ae | ||
|
|
cf6a80104f | ||
|
|
bc65b81e51 | ||
|
|
b4f78d4813 | ||
|
|
c423bdeeb3 | ||
|
|
22e7eb24ed | ||
|
|
2f1c062fea | ||
|
|
ddd0ba1069 | ||
|
|
b0e5e072e6 | ||
|
|
90754d58b0 | ||
|
|
2c158f212f | ||
|
|
86acc89e7b | ||
|
|
9e04da886b | ||
|
|
9cb7406cda | ||
|
|
8cdab0a7bc | ||
|
|
2c1afd705d | ||
|
|
6c0d1e2d9a | ||
|
|
9941e2c8e6 | ||
|
|
1d81fdd1a5 | ||
|
|
9ada3e8807 | ||
|
|
ffd841011e | ||
|
|
4eb62a6344 | ||
|
|
4efa58eadc | ||
|
|
154c0cbab7 | ||
|
|
5f5871ca78 | ||
|
|
c398c2494d | ||
|
|
e6e6cea38d | ||
|
|
43822c02d2 | ||
|
|
59366cc6e0 | ||
|
|
70b6c61002 | ||
|
|
98cfa3a875 | ||
|
|
d586afc95f | ||
|
|
866a884e44 | ||
|
|
dad8e9477b | ||
|
|
32aea06044 | ||
|
|
669c0b0cad | ||
|
|
8782bf1ff0 | ||
|
|
371bbc9783 | ||
|
|
14ac9fcbd7 | ||
|
|
44c17b1ad8 | ||
|
|
0ad88f21c0 | ||
|
|
284651f60f | ||
|
|
1fbef8c4df | ||
|
|
8c9285c68f | ||
|
|
287fcea1ce | ||
|
|
75cf579b12 | ||
|
|
29fbd8c409 | ||
|
|
270e6a89d1 | ||
|
|
eb8250b700 | ||
|
|
d29bcc8749 | ||
|
|
7670f3a712 | ||
|
|
c86f6e21ca | ||
|
|
adf77d47cc | ||
|
|
fb63cd00e4 | ||
|
|
6630e3a42e | ||
|
|
033d5310f8 | ||
|
|
0c2a43a2af | ||
|
|
aaeb7d12db | ||
|
|
b4e6894964 | ||
|
|
413415f999 | ||
|
|
4da4b6e02e | ||
|
|
888f298edc | ||
|
|
ede247e7ef | ||
|
|
b785241cca | ||
|
|
216065727c | ||
|
|
8178781dcd | ||
|
|
f23f06025b | ||
|
|
d5ccb245f2 | ||
|
|
6a31763c49 | ||
|
|
21dd59ebbd | ||
|
|
450a925c7f | ||
|
|
587e0d2e8d | ||
|
|
5ecf01cd52 | ||
|
|
3302067675 | ||
|
|
7683dbf56c | ||
|
|
793332a9ef | ||
|
|
0f50ca38ee | ||
|
|
8424b0c9bc | ||
|
|
0e240b66ee | ||
|
|
f464617366 | ||
|
|
17b525eae8 | ||
|
|
c9c6cc5cae | ||
|
|
70c328bbc5 | ||
|
|
86c9a5b15b | ||
|
|
9deaea5490 | ||
|
|
ca0055f769 | ||
|
|
4b388fc343 | ||
|
|
75d7e2b0f9 | ||
|
|
e81467f31f | ||
|
|
d497ed44ef | ||
|
|
f4aa566f01 | ||
|
|
d087687d38 | ||
|
|
05b91a736d | ||
|
|
1809168562 | ||
|
|
e52315798a | ||
|
|
a1b1168aa6 | ||
|
|
ccabed6bea | ||
|
|
7342559844 | ||
|
|
b85529e2c1 | ||
|
|
96ba81c611 | ||
|
|
bc87d9d9af | ||
|
|
6f91d30e82 | ||
|
|
392517514c | ||
|
|
b05789a367 | ||
|
|
7a1f974930 | ||
|
|
ef283dcbf3 | ||
|
|
ac0c4abd8b | ||
|
|
5a1194f8de | ||
|
|
a49976d54c | ||
|
|
aed5a5bf0f | ||
|
|
5793f13b9c | ||
|
|
fb58f25175 | ||
|
|
9c434fdbdc | ||
|
|
3c8cd0499e | ||
|
|
f26bb49692 | ||
|
|
8b0abf8d05 | ||
|
|
518b62444e | ||
|
|
ffc593f9bc | ||
|
|
84b5fc9f93 | ||
|
|
14761ee128 | ||
|
|
4d29b719ef | ||
|
|
a3d4de00bc | ||
|
|
aa3fb2e298 | ||
|
|
3fb71e2a60 | ||
|
|
41520782d1 | ||
|
|
24286ebb75 | ||
|
|
3f73825972 | ||
|
|
56b655af2d | ||
|
|
70d940584e | ||
|
|
0cdb4f8d3f | ||
|
|
67be930060 | ||
|
|
be82242ed1 | ||
|
|
67d6e35d9f | ||
|
|
f34e697016 | ||
|
|
56cfbb5485 | ||
|
|
d40b7928d0 | ||
|
|
ac2f8b0a1c | ||
|
|
caf7589b89 | ||
|
|
ebada9f455 | ||
|
|
d2dc1a20c3 | ||
|
|
d115f01d4a | ||
|
|
b1dc0ab79d | ||
|
|
c147843d39 | ||
|
|
ae67817eb4 | ||
|
|
27e48defb2 | ||
|
|
cc216e288e | ||
|
|
9f32bc990d | ||
|
|
3a981f24e3 | ||
|
|
a626283b54 | ||
|
|
12eaf89f48 | ||
|
|
5e1331bad0 | ||
|
|
e44418d381 | ||
|
|
c86f1e509b | ||
|
|
f7f2421843 | ||
|
|
014486e558 | ||
|
|
ce4a40d860 | ||
|
|
36847aeaa2 | ||
|
|
43adf55a4b | ||
|
|
838dc01ebc | ||
|
|
641055ab74 | ||
|
|
5c19b6a6e1 | ||
|
|
af2570f15d | ||
|
|
df77f397aa | ||
|
|
d6dee813c5 | ||
|
|
d20f576908 | ||
|
|
17dd927719 | ||
|
|
bff49cd2b9 | ||
|
|
49090f1b97 | ||
|
|
15324d0840 | ||
|
|
8b632fe4f9 | ||
|
|
11ff23bf94 | ||
|
|
332765a72e | ||
|
|
38869e8681 | ||
|
|
85cd1dc594 | ||
|
|
55f7ee0c8c | ||
|
|
d24be4da0b | ||
|
|
ae36155545 | ||
|
|
dc5560f8fd | ||
|
|
18985cb57d | ||
|
|
830d62ead8 | ||
|
|
5c8d9d6096 | ||
|
|
22d26079e4 | ||
|
|
c564ea0ab8 | ||
|
|
ec7bf0f2b9 | ||
|
|
be241ab6bd | ||
|
|
4b2985b4ef | ||
|
|
d4afb57f9f | ||
|
|
230a59bbb3 | ||
|
|
f4a5cf8306 | ||
|
|
b606fe02ff | ||
|
|
3375356143 | ||
|
|
d9255ecbca | ||
|
|
6ad6f6b4b3 | ||
|
|
a8caea3b6d | ||
|
|
1a49e18200 | ||
|
|
c223d7a476 | ||
|
|
eaa51358a8 | ||
|
|
00827b3b15 | ||
|
|
ccddaf4386 | ||
|
|
0f0ba46989 | ||
|
|
f83db38a6b | ||
|
|
ba5582ab4c | ||
|
|
fb4e1d9b31 | ||
|
|
2dea6e382b | ||
|
|
fa8eada97b | ||
|
|
c102f66234 | ||
|
|
68a50fdb4a | ||
|
|
aac83acb8f | ||
|
|
4be4d5e9ef | ||
|
|
1f925b307f | ||
|
|
49afe032d6 | ||
|
|
f0f054c8cd | ||
|
|
699e9ca31a | ||
|
|
76cace4ff6 | ||
|
|
9f3218ab7f | ||
|
|
8a61f518f5 | ||
|
|
e9d5023263 | ||
|
|
05b1e21bba | ||
|
|
4a496fdab3 | ||
|
|
8ae3a6534d | ||
|
|
3269376c94 | ||
|
|
7a92de4d62 | ||
|
|
5fbc1e3fb3 | ||
|
|
d73c3154f9 |
4
.github/workflows/daily_keywords.yml
vendored
4
.github/workflows/daily_keywords.yml
vendored
@@ -2,8 +2,8 @@ name: Daily Data Factory
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# 每天 UTC 18:00 (北京时间凌晨 02:00) 执行,赶在节点凌晨3点更新前造好子弹
|
||||
- cron: '0 18 * * *'
|
||||
# 每天 UTC 03:00 执行,为各节点全天随机拉取准备好弹药
|
||||
- cron: '0 3 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
|
||||
102
.github/workflows/star_history.yml
vendored
Normal file
102
.github/workflows/star_history.yml
vendored
Normal file
@@ -0,0 +1,102 @@
|
||||
name: Generate Star History
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Generate Star History SVG (Pure Local)
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
python3 -m venv venv
|
||||
source venv/bin/activate
|
||||
pip install matplotlib requests
|
||||
|
||||
python3 - <<'PYEOF'
|
||||
import requests, os
|
||||
import matplotlib.pyplot as plt
|
||||
import matplotlib.dates as mdates
|
||||
from datetime import datetime
|
||||
|
||||
token = os.environ['GITHUB_TOKEN']
|
||||
repo = '${{ github.repository }}'
|
||||
headers = {'Authorization': f'Bearer {token}', 'Accept': 'application/vnd.github.v3.star+json'}
|
||||
url = f'https://api.github.com/repos/{repo}/stargazers?per_page=100'
|
||||
dates = []
|
||||
|
||||
while url:
|
||||
r = requests.get(url, headers=headers)
|
||||
if r.status_code != 200:
|
||||
break
|
||||
data = r.json()
|
||||
if not data:
|
||||
break
|
||||
for star in data:
|
||||
if 'starred_at' in star:
|
||||
dates.append(datetime.strptime(star['starred_at'], '%Y-%m-%dT%H:%M:%SZ'))
|
||||
url = r.links.get('next', {}).get('url')
|
||||
|
||||
if dates:
|
||||
dates.sort()
|
||||
counts = list(range(1, len(dates) + 1))
|
||||
dates.append(datetime.utcnow())
|
||||
counts.append(counts[-1])
|
||||
|
||||
# ==========================================
|
||||
# [视觉升级] 注入 GitHub 官方暗黑模式 UI 规范
|
||||
# ==========================================
|
||||
bg_color = '#0d1117' # GitHub 暗黑底色
|
||||
text_color = '#c9d1d9' # GitHub 亮灰字体
|
||||
grid_color = '#30363d' # GitHub 边框网格色
|
||||
line_color = '#2ea44f' # GitHub 经典成功绿
|
||||
|
||||
fig, ax = plt.subplots(figsize=(10, 5), facecolor=bg_color)
|
||||
ax.set_facecolor(bg_color)
|
||||
|
||||
# 设置字体颜色与坐标轴颜色
|
||||
ax.tick_params(colors=text_color)
|
||||
ax.xaxis.label.set_color(text_color)
|
||||
ax.yaxis.label.set_color(text_color)
|
||||
ax.title.set_color(text_color)
|
||||
|
||||
# 设置边框颜色
|
||||
for spine in ax.spines.values():
|
||||
spine.set_edgecolor(grid_color)
|
||||
|
||||
# 绘制核心趋势线与阴影填充
|
||||
plt.plot(dates, counts, color=line_color, linewidth=2)
|
||||
plt.fill_between(dates, counts, color=line_color, alpha=0.1)
|
||||
|
||||
plt.title(f'{repo} Star History', fontsize=16, color=text_color, pad=15)
|
||||
plt.ylabel('Stars', fontsize=12, color=text_color)
|
||||
|
||||
# 设置网格虚线
|
||||
plt.grid(True, linestyle='--', alpha=0.5, color=grid_color)
|
||||
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))
|
||||
plt.gcf().autofmt_xdate()
|
||||
plt.tight_layout()
|
||||
|
||||
os.makedirs('data', exist_ok=True)
|
||||
# 强制应用背景色,关闭透明度,打破隐形诅咒
|
||||
plt.savefig('data/star_history.svg', format='svg', facecolor=bg_color, transparent=False)
|
||||
print("✅ [Success] 极客暗黑风 SVG 渲染完毕!")
|
||||
PYEOF
|
||||
|
||||
- name: Commit & Push Changes
|
||||
run: |
|
||||
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot]"
|
||||
git add data/star_history.svg
|
||||
git commit -m "style: 修复暗黑模式下坐标轴隐形问题,采用 GitHub 原生深色主题渲染图表" || exit 0
|
||||
git push origin main
|
||||
4
.github/workflows/ua_factory.yml
vendored
4
.github/workflows/ua_factory.yml
vendored
@@ -2,8 +2,8 @@ name: Automated Massive UA Factory
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# 每个月 1 号凌晨 00:00 执行
|
||||
- cron: '0 0 1 * *'
|
||||
# 每个月 1 号凌晨 04:00 执行
|
||||
- cron: '0 4 1 * *'
|
||||
workflow_dispatch: # 允许手动点击运行
|
||||
|
||||
jobs:
|
||||
|
||||
61
README.md
61
README.md
@@ -5,6 +5,7 @@
|
||||

|
||||
|
||||
> **一个极度轻量、零感知、支持中枢遥控的 VPS IP 自动化养护与区域纠偏引擎。**
|
||||
> **💡 提示:如果本项目提升了您的节点稳定性,请点击右上角点亮 🌟 Star!您的支持是我们持续研发和维护指纹库的核心动力。**
|
||||
|
||||
📢 官方战术交流频道: 🛰️ [IP-Sentinel Matrix](https://t.me/IP_Sentinel_Matrix)
|
||||
|
||||
@@ -12,34 +13,35 @@
|
||||
|
||||
## ✨ 核心极客特性 (Core Architecture)
|
||||
|
||||
- 📊 **深海声呐全维探针 (Deep Sea Sonar v4.0)**:内嵌强效正则清洗的 JSON 提取引擎,异步生成情报级 IP 质量战报。聚合 Scamalytics、AbuseIPDB 等五大权威防欺诈库,精准嗅探代理/VPN特征、25端口封堵情况及原生流媒体(Netflix/Disney+/TikTok等)解锁状态,并自带 Google “送中”高危预警与基于 SQLite 的历史污染趋势追踪图谱。
|
||||
- ⚡ **无损高并发引擎 (WAL Concurrency)**:司令部 SQLite 数据库全面激活 `WAL` (Write-Ahead Logging) 模式与毫秒级排队削峰算法。即使您同时对 500 台边缘节点发起全军总攻,也能完美规避 `database is locked` 与 Telegram `429` 频率拦截,实现 100% 战报送达。
|
||||
- 🪶 **抽脂级极简部署 (Zero-Bloat Native)**:全栈剔除 `pip`、`flask` 等臃肿第三方依赖,完全基于 Python3 原生标准库运行。安装底层强制注入 `--no-install-recommends` 防捆绑参数。无论是 128MB 内存的极简 NAT 小鸡,还是 Alpine/Arch Linux 特种系统,均可如丝般顺滑运行。
|
||||
- 🎛️ **扁平化指挥矩阵 (Flat Command Matrix)**:[v3.6.1 重构] 引入扁平化 L0-L3 四级战区降维视图与双轨身份制。深度定制 Inline Keyboard 逃生舱交互,支持在统一哨兵终端进行原位丝滑重绘 (In-place UI Edit),实现毫秒级模块热启停与日志抓取,彻底告别刷屏烦恼。
|
||||
- 🔄 **全栈零信任 OTA 引擎 (Zero-Trust OTA Upgrade)**:首创双端物理熔断机制。长官可通过私有中枢,一键向全舰队下发静默热重载指令;更支持**「司令部金蝉脱壳」**,中枢大脑可在此面板自我抛出幽灵进程进行免交互直装覆盖,实现真正的全栈去 SSH 化运维。
|
||||
- 🛡️ **SSOT 溯源与热更新装甲 (Smooth Upgrade Engine)**:全系脚本彻底消灭硬编码,部署时动态抓取云端版本信标。自带状态机嗅探逻辑与防撞甲探测,即使是手动在终端运行安装,也仅需回车瞬间完成配置继承、数据同步与无损换代。
|
||||
- 🗺️ **全球拓扑矩阵与活体词库 (Global Nexus)**:守护版图横跨亚欧美三大洲。接入 GitHub Actions 云端流水线,每日静默同步全球各大区当日 Google 真实热搜榜单与高权重本土站点,让伪装行为永远贴合当地网络脉搏。
|
||||
- 👻 **资产持久化与错峰调度 (Hash-Seeded Persona)**:摒弃随机抽取指纹,基于节点物理 IP 哈希永久锁定 3 个绝对专属设备,完美构建高权重真实家庭内网画像。叠加按需智能分频与随机防并发休眠,化解“惊群效应”。
|
||||
- 🖧 **底层路由死锁与高精度探针 (Hard-Bind Routing)**:底层探测引擎强力接管 curl 核心参数 (`--interface`),将发出的每一滴伪装流量死死绑定在物理网卡或隧道 IP 上。配合多级 ISP 容灾链路,彻底杜绝双栈环境下的流量溢出与 API 误判。
|
||||
- 📊 **深海声呐全维探针 (Deep Sea Sonar)**:内嵌强效正则去污的 JSON 提取引擎,无损展现免掩码的真实 IP 情报。聚合 Scamalytics、AbuseIPDB 等五大权威防欺诈库,精准嗅探代理/VPN特征、25端口及流媒体原生解锁状态,并自带 Google “送中”高危预警与污染趋势图谱。
|
||||
- ⚡ **无损高并发引擎 (WAL Concurrency)**:司令部 SQLite 数据库全面激活 `WAL` (Write-Ahead Logging) 模式与毫秒级排队算法。即使对 500 台边缘节点发起全军总攻,也能完美规避 `database is locked` 与 Telegram `429` 拦截。
|
||||
- 🪶 **模块化极简部署 (Modular & Zero-Bloat)**:全栈剔除第三方依赖,基于 Python3 原生标准库运行。安装入口采用高内聚低耦合的引导层架构(Bootstrapper),配合 `bash -c` 纯净挂载,全面适配 Debian/Alpine/CentOS 等全系 Linux,杜绝管道流污染。
|
||||
- 🎛️ **扁平化指挥矩阵 (Flat Command Matrix)**:引入扁平化四级战区降维视图与双轨身份制。深度定制 Inline Keyboard 逃生舱交互,支持原位丝滑重绘 (In-place UI Edit) 与二次高危确认(Secondary Confirmation),实现毫秒级模块热启停与跨地域深海声呐投放。
|
||||
- 🔄 **全栈零信任 OTA 引擎 (Zero-Trust OTA Upgrade)**:首创双端物理熔断机制。长官可通过私有中枢,一键向全舰队下发静默热重载指令;更支持**「司令部金蝉脱壳」**,实现真正的全栈去 SSH 化运维。
|
||||
- 🛡️ **自动化防线操纵 (Autopilot Firewalls)**:安装与卸载阶段自动嗅探底层组件(UFW / Firewalld / iptables / ip6tables),实施双栈(IPv4 & IPv6)冗余通道的自动化放行与闭环抹杀,全程零敞露。
|
||||
- 🗺️ **全球拓扑矩阵与活体词库 (Global Nexus)**:接入 GitHub Actions 云端兵工厂,每日静默同步全球各大区真实热搜榜单与高权重本土站点,让伪装行为永远贴合当地网络脉搏。
|
||||
- 👻 **绝对时空对齐与高频错峰 (UTC-Seeded Scheduling)**:全栈强制接管底层时钟为**绝对 UTC 时间**。全舰队以 **20 分钟 (每日 72 次)** 的极高密度进行养护巡逻,叠加基于部署锚点的天然削峰与随机防并发休眠,完美化解十万级集群的“惊群效应”。
|
||||
- 🖧 **三级容灾架构与智能多宿主 (Multi-IP Fallback)**:底层引擎强力接管发包参数 (`--interface`) 并双重过滤 WARP/TUN 等假公网环境。创新引入三级阶梯脱壳与多宿主弹匣装填,彻底杜绝探针假死与流媒体失明误报。
|
||||
|
||||
**—— 💎 骨干基建特征 ——**
|
||||
- 🏭 **自动化指纹兵工厂**:依托 GitHub Actions CI/CD 流水线,每月 1 日无人值守锻造 4000+ 带绝对物理分区的真实终端设备数据。
|
||||
- 🏭 **全自动云端军工厂 (CI/CD Data Factory)**:依托 GitHub Actions 构建双轨无人值守流水线。**每月 1 日**批量锻造 4000+ 带有绝对物理分区的原生终端指纹库;**每日凌晨 (UTC)** 实时抓取全球各战区 Google 真实热搜榜单与本土骨干新闻 RSS。为前线舰队源源不断地输送最鲜活的伪装弹药。
|
||||
- 🔒 **叹息之墙 (Zero-Trust HMAC)**:底层通讯引入 时间戳 + HMAC-SHA256 军用级动态签名。指令有效期仅 60 秒(阅后即焚),未授权请求直接触发系统级 403 物理熔断,彻底免疫中间人抓包与重放攻击。
|
||||
- ☁️ **云端中枢 (Public Master)**:官方公共机器人 [@OmniBeacon_bot](https://t.me/OmniBeacon_bot) ,新手免自建,一键接入极速入伍!同时支持硬核极客私有化 SQLite 分布式部署。
|
||||
- 👁️🗨️ **玻璃房透明遥测 (Glasshouse)**:基于 Cloudflare Workers 的全透明计数中枢,绝对零隐私收集,仅作原子累加,底层网关源码全开源。
|
||||
|
||||
## 📂 项目架构 (Monorepo)
|
||||
## 📂 项目架构 (Modular Monorepo)
|
||||
|
||||
本项目采用企业级的“主从控制”与“冷热数据分离”双重架构:
|
||||
本项目已迈入 v4.3.0 现代工程时代,采用高内聚的模块化与“冷热数据分离”双重架构:
|
||||
|
||||
```text
|
||||
📦 IP-Sentinel
|
||||
┣ 📂 .github/workflows/ # 🏭 自动化兵工厂:每月定时触发指纹生成的 CI/CD 流水线
|
||||
┣ 📂 master/ # 🧠 司令部:SQLite 存储 (含 ip_trend_log 趋势跟踪表)、TG 监听与 Webhook 调度
|
||||
┣ 📂 core/ # 🛡️ 边缘哨兵:Webhook 被动监听、哈希锚定执行引擎 (集成深海声呐探测模块)
|
||||
┣ 📂 scripts/ # 🐍 兵工厂引擎:基于 Python 的多物理分区 UA 生成器
|
||||
┣ 📂 install/ # 🧩 [v4.3.0] 安装期编排引擎:模块化解耦的环境判定、交互层与网络防线
|
||||
┣ 📜 install.sh # 🚀 Agent 引导程序:以防污染单行指令调用下层模块
|
||||
┣ 📂 master/ # 🧠 司令部:SQLite 存储、TG 监听与 Webhook 调度 (含专属引导程序)
|
||||
┣ 📂 core/ # 🛡️ 边缘哨兵:Webhook 守护进程、多维交叉探针与原子养护循环
|
||||
┣ 📂 scripts/ # 🐍 兵工厂引擎:基于 Python 的多物理分区 UA 与热搜词生成器
|
||||
┣ 📂 data/ # 🗂️ 全球数据规则库 (动态拓扑)
|
||||
┃ ┣ 📜 map.json # 🌍 全球区域大脑 (v3.5.0 大洲战区拓扑)
|
||||
┃ ┣ 📜 map.json # 🌍 全球区域大脑 (战区拓扑引擎)
|
||||
┃ ┣ 📂 regions/ # 🧊 冷数据:按 [国家/省州/城市] 深度细分的 LBS 锚点
|
||||
┃ ┣ 📂 keywords/ # 🔥 热数据:按国家归类的动态搜索词库 (OTA 自动更新)
|
||||
┃ ┗ 📜 user_agents.txt # 🔥 热数据:由兵工厂每月锻造的绝对坐标专属设备库
|
||||
@@ -49,6 +51,7 @@
|
||||
|
||||
## 🚀 极速部署 (Quick Start)
|
||||
> 🛡️ **跨平台装甲支持**:Debian / Ubuntu / CentOS / RHEL / Alpine Linux / Arch Linux
|
||||
⚠️ 指令规范:全系统已升级为防污染内存加载。请严格复制下方完整指令,切勿使用 curl | bash 以防中断!
|
||||
系统现提供两种接入模式,请根据您的战术需求选择:
|
||||
|
||||
### 🔹 模式 A:私有独立模式 (全自主、强烈推荐)
|
||||
@@ -56,26 +59,29 @@
|
||||
|
||||
> ☢️ **核按钮系统已就绪**:采用私有部署,您将解锁 **OTA 远程静默升级** 权限!所有私有前线节点均可通过您的 TG 面板实现一键全网代码热重载换代!
|
||||
|
||||
- **部署 Master (中枢大脑)**:找一台 VPS 作为司令部(仅需部署一台),执行:
|
||||
- **部署 Master (中枢大脑)**:找一台 VPS 作为司令部(仅需部署一台,可以与Agent装在同一台VPS),执行:
|
||||
- [官方部署教程](https://blog.iot-architect.com/engineering-practice/ip-sentinel-master-deployment-guide/)
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/master/install_master.sh -o /tmp/ins_master.sh && sudo bash /tmp/ins_master.sh
|
||||
bash -c "$(curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/master/install_master.sh)"
|
||||
```
|
||||
- 部署 Agent (边缘哨兵):在需要养护的机器上执行 Agent 脚本,安装时选择私有独立中枢,并分别输入您自建机器人的 [Token](https://blog.iot-architect.com/engineering-practice/create-private-telegram-bot-via-botfather) 以及您的个人 [Chat ID](https://blog.iot-architect.com/engineering-practice/get-telegram-personal-id-via-userinfobot) :
|
||||
|
||||
- [官方部署教程](https://blog.iot-architect.com/engineering-practice/ip-sentinel-installation-and-upgrade-guide/)
|
||||
```Bash
|
||||
curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/core/install.sh -o /tmp/ins_agent.sh && sudo bash /tmp/ins_agent.sh
|
||||
bash -c "$(curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/install.sh)"
|
||||
```
|
||||
- 激活节点:安装完成后,您的手机会收到一条 #REGISTER# 注册暗号,将其转发给您自己的机器人即可完成编队入库。
|
||||
|
||||
### 🔸 模式 B:官方公共模式 (最简体验)
|
||||
适合不想折腾、只想快速体验养护效果的新兵。
|
||||
|
||||
> ☢️ **核按钮系统已阉割**:采用官方BOT,您将失去 **OTA 远程静默升级** 权限!所有私有前线节点只能通过SSH登录进行更新换代!
|
||||
|
||||
- 关注机器人:在 TG 中关注官方安全网关 [@OmniBeacon_bot](https://t.me/OmniBeacon_bot) 并发送 /start。
|
||||
|
||||
- 部署 Agent:在目标 VPS 上执行以下指令,安装过程中选择官方公共网关,并输入您的 Chat ID:
|
||||
|
||||
- [官方部署教程](https://blog.iot-architect.com/engineering-practice/deploy-ip-sentinel-official-gateway/)
|
||||
```Bash
|
||||
curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/core/install.sh -o /tmp/ins_agent.sh && sudo bash /tmp/ins_agent.sh
|
||||
bash -c "$(curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/install.sh)"
|
||||
```
|
||||
- 激活节点:同上,将收到的暗号转发给官方机器人即可。
|
||||
|
||||
@@ -92,7 +98,7 @@ curl -fsSL https://raw.githubusercontent.com/hotyue/IP-Sentinel/main/core/instal
|
||||
### 💻 方式二:SSH 终端平滑直装 (适用于官方网关或老旧节点)
|
||||
如果您的节点不支持 OTA,或者您的节点版本过于陈旧 (如 v3.3.1):
|
||||
|
||||
- 登录该节点的 SSH 终端,再次运行上面的 core/install.sh 官方安装指令。
|
||||
- 登录该节点的 SSH 终端,再次运行上面的 bash -c 官方单行安装指令。
|
||||
|
||||
- 安装引擎自带状态机嗅探逻辑,它会自动读取老旧数据,您只需一路回车,3 秒即可在本地完成配置继承、数据同步与新内核的无损覆盖热重载!
|
||||
|
||||
@@ -128,6 +134,9 @@ bash <(curl -sL https://raw.githubusercontent.com/hotyue/IP-Sentinel/legacy/core
|
||||
|
||||
如果你想为项目增加新的节点区域(例如德国、英国、大洋洲等),或者提供更丰富的本土化搜索词库,非常欢迎提交 Pull Request!
|
||||
|
||||
|
||||
> - 感谢 @xykt 本项目IP质量检测采用[xykt/IPQuality](https://github.com/xykt/IPQuality) 脚本!
|
||||
|
||||
**💡 全球节点贡献规范:**
|
||||
1. 在 `data/regions/国家代码/省州代码/` 目录下新增对应城市的配置 `.json`。
|
||||
2. 在 `data/keywords/` 目录下新增或完善配套国家的词库 `kw_XX.txt`。
|
||||
@@ -144,5 +153,5 @@ bash <(curl -sL https://raw.githubusercontent.com/hotyue/IP-Sentinel/legacy/core
|
||||
如果你觉得这个项目对你有帮助,欢迎关注我的个人博客,我会定期分享技术教程。
|
||||
|
||||
|
||||
## Stargazers over time
|
||||
[](https://starchart.cc/hotyue/IP-Sentinel)
|
||||
### 📈 Stargazers over time
|
||||

|
||||
@@ -1,8 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: agent_daemon.sh (受控节点 Webhook 守护进程 - 动态锚点版)
|
||||
# 核心功能: 智能防打扰注册、进程自检、模块级路由分发(403拦截)
|
||||
# 脚本名称: agent_daemon.sh
|
||||
# 核心功能: TLS 隧道构建、HMAC 动态鉴权、防重放攻击、模块级零信任路由
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
@@ -12,23 +12,26 @@ IP_CACHE="${INSTALL_DIR}/core/.last_ip"
|
||||
[ ! -f "$CONFIG_FILE" ] && exit 1
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
# 如果没有配置 TG,说明未开启联控模式,直接退出
|
||||
# [战术核心] 若未配置司令部凭证,则判定为单机运行模式,主动进入休眠
|
||||
[ -z "$TG_TOKEN" ] || [ -z "$CHAT_ID" ] && exit 0
|
||||
|
||||
# 默认 Webhook 监听端口
|
||||
AGENT_PORT=${AGENT_PORT:-9527}
|
||||
# [v3.5.2 核心] 载入不可变主键与可变展示名 (双轨身份)
|
||||
|
||||
# ----------------------------------------------------------
|
||||
# [身份锚定] 载入不可变主键与展示别名 (双轨身份映射)
|
||||
# ----------------------------------------------------------
|
||||
if [ -z "$NODE_NAME" ]; then
|
||||
IP_HASH=$(echo "${PUBLIC_IP:-127.0.0.1}" | md5sum | cut -c 1-4 | tr 'a-z' 'A-Z')
|
||||
NODE_NAME="$(hostname | tr -cd 'a-zA-Z0-9' | cut -c 1-10)-${IP_HASH}"
|
||||
fi
|
||||
NODE_ALIAS="${NODE_ALIAS:-$NODE_NAME}"
|
||||
|
||||
|
||||
# 1. 尝试获取实时公网 IP
|
||||
# ----------------------------------------------------------
|
||||
# [网络侦测] 实时公网 IP 嗅探与静默状态更新
|
||||
# ----------------------------------------------------------
|
||||
RAW_IP=$(curl -${IP_PREF:-4} -s -m 5 api.ip.sb/ip | tr -d '[:space:]')
|
||||
|
||||
# [v3.3.1 修改] 为新获取到的 v6 自动加方括号;如果网络波动没抓到,强制信任本地 config 中的公网面孔
|
||||
# [防线/容灾] 为 IPv6 自动装载方括号护甲;API 失效时退回静态配置锚点
|
||||
if [ -n "$RAW_IP" ]; then
|
||||
if [[ "$RAW_IP" == *":"* ]] && [[ "$RAW_IP" != *"["* ]]; then
|
||||
AGENT_IP="[${RAW_IP}]"
|
||||
@@ -40,29 +43,39 @@ else
|
||||
fi
|
||||
|
||||
if [ -n "$AGENT_IP" ]; then
|
||||
# --- [重点升级 2: 智能防打扰注册机制] ---
|
||||
LAST_IP=""
|
||||
[ -f "$IP_CACHE" ] && LAST_IP=$(cat "$IP_CACHE" | tr -d '[:space:]')
|
||||
|
||||
# 只有当这是第一次运行,或者公网 IP 发生变动时,才发送 Telegram 申请
|
||||
if [ "$AGENT_IP" != "$LAST_IP" ]; then
|
||||
# [v3.6.0 核心修复] 携带 7 字段身份发起注册申请 (追加 ENABLE_OTA,防止 IP 变动重新注册时丢失 OTA 权限)
|
||||
REG_MSG="👋 **[边缘节点接入申请]**%0A大区: \`${REGION_CODE}\`%0A节点: \`${NODE_ALIAS}\`%0A地址: \`${AGENT_IP}:${AGENT_PORT}\`%0A%0A⚠️ **安全验证**: 为防止非法节点接入,请长按复制下方代码,并**发送给我**以完成最终授权录入:%0A%0A\`#REGISTER#|${REGION_CODE}|${NODE_NAME}|${AGENT_IP}|${AGENT_PORT}|${NODE_ALIAS}|${ENABLE_OTA:-false}\`"
|
||||
|
||||
curl -s -m 5 -X POST "${TG_API_URL}" \
|
||||
-d "chat_id=${CHAT_ID}" \
|
||||
-d "text=${REG_MSG}" \
|
||||
-d "parse_mode=Markdown" > /dev/null
|
||||
|
||||
echo "✅ [Agent] 已向司令部发送接入申请,请在 Telegram 手机端完成授权!"
|
||||
# [底层交互] 仅执行本地缓存重写,切除高频发信逻辑,保持静默侦听
|
||||
echo "$AGENT_IP" > "$IP_CACHE"
|
||||
echo "ℹ️ [Agent] 发现本地 IP 变动,已静默更新缓存: $AGENT_IP"
|
||||
else
|
||||
echo "ℹ️ [Agent] IP 未变动 ($AGENT_IP),跳过重复注册申请。"
|
||||
echo "ℹ️ [Agent] IP 未变动 ($AGENT_IP),继续后台静默监听。"
|
||||
fi
|
||||
fi
|
||||
|
||||
# ================== [v3.6.3 新增: 自动生成自签名 TLS 加密证书] ==================
|
||||
# [修复] 彻底废除官方网关免 TLS 的裸奔逻辑,全网强制生成证书装甲
|
||||
# [v4.2.2 终极架构] 彻底剥离 Bash 对底层网络栈的干预,将控制权全权移交 Python 全域引擎
|
||||
echo "🌐 [Agent] 底层网络栈已解锁,准备切入全域双栈监听模式 (Dual-Stack Universal Bind)"
|
||||
|
||||
# ==========================================================
|
||||
# [加密通信] 强制构建自签名 TLS 装甲,屏蔽中间人嗅探
|
||||
# ==========================================================
|
||||
CERT_FILE="${INSTALL_DIR}/core/cert.pem"
|
||||
KEY_FILE="${INSTALL_DIR}/core/key.pem"
|
||||
|
||||
# [v4.2.2 热修复] 检查证书是否过于陈旧,若是则强制销毁重铸 (保障平滑升级的 TLS 健康)
|
||||
if [ -f "$CERT_FILE" ]; then
|
||||
CERT_DATE=$(openssl x509 -noout -startdate -in "$CERT_FILE" 2>/dev/null | cut -d= -f2)
|
||||
if [[ -n "$CERT_DATE" ]]; then
|
||||
CERT_EPOCH=$(date -d "$CERT_DATE" +%s 2>/dev/null || echo 0)
|
||||
V422_EPOCH=$(date -d "2026-05-31" +%s 2>/dev/null || echo 1780185600)
|
||||
if [ "$CERT_EPOCH" -lt "$V422_EPOCH" ]; then
|
||||
echo "🧹 [Agent] 侦测到旧版 (v4.2.2 前) 遗留 TLS 装甲,正在执行强制物理销毁..."
|
||||
rm -f "$CERT_FILE" "$KEY_FILE"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
CERT_FILE="${INSTALL_DIR}/core/cert.pem"
|
||||
KEY_FILE="${INSTALL_DIR}/core/key.pem"
|
||||
if [ ! -f "$CERT_FILE" ] || [ ! -f "$KEY_FILE" ]; then
|
||||
@@ -71,9 +84,10 @@ if [ ! -f "$CERT_FILE" ] || [ ! -f "$KEY_FILE" ]; then
|
||||
-keyout "$KEY_FILE" -out "$CERT_FILE" \
|
||||
-subj "/C=US/O=IP-Sentinel/CN=Agent-Sec" >/dev/null 2>&1 || true
|
||||
fi
|
||||
# ==============================================================================
|
||||
|
||||
# 3. 启动轻量级 Python3 Webhook 监听服务 (v3.0.4 动态 HMAC 签名防重放)
|
||||
# ==========================================================
|
||||
# [引擎核心] Python3 高并发 Webhook 侦听与路由枢纽
|
||||
# ==========================================================
|
||||
cat > "${INSTALL_DIR}/core/webhook.py" << 'EOF'
|
||||
import http.server
|
||||
import socketserver
|
||||
@@ -81,26 +95,26 @@ import subprocess
|
||||
import sys
|
||||
import os
|
||||
import html
|
||||
# ================== [v3.0.4 新增密码学与解析依赖] ==================
|
||||
import urllib.parse
|
||||
import urllib.request
|
||||
import hmac
|
||||
import hashlib
|
||||
import time
|
||||
# ====================================================================
|
||||
|
||||
PORT = int(sys.argv[1])
|
||||
|
||||
# 🛡️ 防重放攻击 (Nonce 缓存池)
|
||||
# ----------------------------------------------------------
|
||||
# [防御矩阵] Nonce 缓存池防重放攻击 (Replay Attack)
|
||||
# ----------------------------------------------------------
|
||||
USED_SIGNS = {}
|
||||
def clean_used_signs():
|
||||
now = time.time()
|
||||
# 清理过期签名 (超 60 秒的安全窗口)
|
||||
# [安全策略] 滑动清理超 65 秒过期签名,保障内存健康
|
||||
expired = [s for s, t in USED_SIGNS.items() if now - t > 65]
|
||||
for s in expired:
|
||||
del USED_SIGNS[s]
|
||||
|
||||
# 🛡️ 提取全局鉴权 Token (利用 CHAT_ID 作为 PSK 预共享密钥)
|
||||
# [权限鉴权] 提取 CHAT_ID 作为 PSK 预共享密钥
|
||||
AUTH_TOKEN = ""
|
||||
if os.path.exists('/opt/ip_sentinel/config.conf'):
|
||||
with open('/opt/ip_sentinel/config.conf', 'r') as f:
|
||||
@@ -112,7 +126,7 @@ if os.path.exists('/opt/ip_sentinel/config.conf'):
|
||||
|
||||
class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
def do_GET(self):
|
||||
# 🛡️ [v3.0.4 核心] URL 解析与动态 HMAC-SHA256 签名校验
|
||||
# [权限校验] 路径解析与 HMAC-SHA256 动态签名核验
|
||||
parsed = urllib.parse.urlparse(self.path)
|
||||
req_path = parsed.path
|
||||
|
||||
@@ -121,7 +135,6 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
req_t = query.get('t', [''])[0]
|
||||
req_sign = query.get('sign', [''])[0]
|
||||
|
||||
# 校验 1:参数是否齐全
|
||||
if not req_t or not req_sign:
|
||||
self.send_response(401)
|
||||
self.end_headers()
|
||||
@@ -130,7 +143,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
|
||||
try:
|
||||
current_time = int(time.time())
|
||||
# 校验 2:时间戳防重放 (误差 ±60秒 内有效,拒绝隔夜抓包重放)
|
||||
# [防重放 1] 校验时间戳防偏离 (±60秒窗口,免疫隔夜抓包重放)
|
||||
if abs(current_time - int(req_t)) > 60:
|
||||
self.send_response(401)
|
||||
self.end_headers()
|
||||
@@ -141,7 +154,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.end_headers()
|
||||
return
|
||||
|
||||
# 校验 2.5:基于 60秒 窗口的精确重放拦截 (拦截 MITM 并发洗劫)
|
||||
# [防重放 2] Nonce 精确核对 (拦截 60 秒内的 MITM 并发重放洗劫)
|
||||
clean_used_signs()
|
||||
if req_sign in USED_SIGNS:
|
||||
self.send_response(401)
|
||||
@@ -149,21 +162,22 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.wfile.write(b"401 Unauthorized: Replay Attack Detected\n")
|
||||
return
|
||||
|
||||
# 校验 3:HMAC 数据完整性与身份合法性校验
|
||||
# [身份核验] 数据完整性校验,使用 compare_digest 免疫时序探测攻击
|
||||
msg = f"{req_path}:{req_t}".encode('utf-8')
|
||||
expected_sign = hmac.new(AUTH_TOKEN.encode('utf-8'), msg, hashlib.sha256).hexdigest()
|
||||
|
||||
# 使用 compare_digest 防御时序攻击
|
||||
if not hmac.compare_digest(expected_sign, req_sign):
|
||||
self.send_response(401)
|
||||
self.end_headers()
|
||||
self.wfile.write(b"401 Unauthorized: Signature Mismatch\n")
|
||||
return
|
||||
|
||||
# 鉴权通过,记录该签名至防重放内存池
|
||||
# 鉴权通过,登记 Nonce 载荷
|
||||
USED_SIGNS[req_sign] = current_time
|
||||
|
||||
# ================== 路由分发 (恢复为安全的精确匹配) ==================
|
||||
# ==========================================================
|
||||
# [指令分发] 模块级业务路由矩阵 (精确匹配策略)
|
||||
# ==========================================================
|
||||
|
||||
# 路由 0: 全局统筹调度
|
||||
if req_path == '/trigger_run':
|
||||
@@ -177,7 +191,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.send_response(404)
|
||||
self.end_headers()
|
||||
|
||||
# 路由 1: Google 区域纠偏
|
||||
# 路由 1: Google 区域纠偏探测
|
||||
elif req_path == '/trigger_google':
|
||||
if os.path.exists('/opt/ip_sentinel/core/mod_google.sh'):
|
||||
self.send_response(200)
|
||||
@@ -191,7 +205,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.end_headers()
|
||||
self.wfile.write(b"403 Forbidden: Google Module Disabled\n")
|
||||
|
||||
# 路由 2: IP 信用净化
|
||||
# 路由 2: IP 信用数据清洗
|
||||
elif req_path == '/trigger_trust':
|
||||
if os.path.exists('/opt/ip_sentinel/core/mod_trust.sh'):
|
||||
self.send_response(200)
|
||||
@@ -205,7 +219,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.end_headers()
|
||||
self.wfile.write(b"403 Forbidden: Trust Module Disabled\n")
|
||||
|
||||
# 路由 3: 触发战报推送
|
||||
# 路由 3: 触发异步战报生成
|
||||
elif req_path == '/trigger_report':
|
||||
self.send_response(200)
|
||||
self.send_header("Content-type", "text/plain")
|
||||
@@ -213,7 +227,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.wfile.write(b"Action Accepted: tg_report\n")
|
||||
os.system("nohup bash /opt/ip_sentinel/core/tg_report.sh >/dev/null 2>&1 &")
|
||||
|
||||
# 路由 4: 抓取并回传实时日志
|
||||
# 路由 4: 获取并回传实时日志切片
|
||||
elif req_path == '/trigger_log':
|
||||
self.send_response(200)
|
||||
self.send_header("Content-type", "text/plain")
|
||||
@@ -238,30 +252,39 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
if lines:
|
||||
log_data = html.escape("".join(lines[-15:]))
|
||||
|
||||
# [v3.5.2 核心] 获取版本与节点展示别名
|
||||
# 动态提取终端状态以构建回传信息
|
||||
local_ver = config.get('AGENT_VERSION', '未知')
|
||||
node_alias = config.get('NODE_ALIAS', config.get('NODE_NAME', 'Unknown-Node'))
|
||||
|
||||
text_msg = f"📄 <b>[{node_alias}] 实时日志 (v{local_ver}):</b>\n<pre><code>{log_data}</code></pre>"
|
||||
|
||||
data = urllib.parse.urlencode({
|
||||
# [交互反馈] 构建内联 JSON Payload 回调指令
|
||||
import json
|
||||
node_name_cb = config.get('NODE_NAME', 'Unknown')
|
||||
payload = {
|
||||
'chat_id': config.get('CHAT_ID', ''),
|
||||
'text': text_msg,
|
||||
'parse_mode': 'HTML'
|
||||
}).encode('utf-8')
|
||||
'parse_mode': 'HTML',
|
||||
'reply_markup': {
|
||||
'inline_keyboard': [[{'text': '⚙️ 调出该节点控制台', 'callback_data': f'manage:{node_name_cb}'}]]
|
||||
}
|
||||
}
|
||||
data = json.dumps(payload).encode('utf-8')
|
||||
|
||||
req = urllib.request.Request(
|
||||
config.get('TG_API_URL', ''),
|
||||
data=data,
|
||||
# [动态化] 彻底消灭硬编码,使用运行态版本号
|
||||
headers={'User-Agent': f'IP-Sentinel-Agent/{local_ver}'}
|
||||
headers={
|
||||
'User-Agent': f'IP-Sentinel-Agent/{local_ver}',
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
)
|
||||
urllib.request.urlopen(req, timeout=10)
|
||||
|
||||
except Exception as e:
|
||||
print(f"Log transmission failed: {e}")
|
||||
|
||||
# ================== [v4.0.0 新增: 触发深海声呐] ==================
|
||||
# 路由 5: 深海声呐模块触发
|
||||
elif req_path == '/trigger_quality':
|
||||
self.send_response(200)
|
||||
self.send_header("Content-type", "text/plain")
|
||||
@@ -270,10 +293,8 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
|
||||
if os.path.exists('/opt/ip_sentinel/core/mod_quality.sh'):
|
||||
os.system("nohup bash /opt/ip_sentinel/core/mod_quality.sh >/dev/null 2>&1 &")
|
||||
# =================================================================
|
||||
|
||||
|
||||
# 路由 5: 节点重命名展示别名同步接口 (Base64 终极防御版)
|
||||
# 路由 6: 节点展示别名热修改 (全量 WAF 防护)
|
||||
elif req_path == '/trigger_rename':
|
||||
b64_alias = query.get('b64', [''])[0]
|
||||
if not b64_alias:
|
||||
@@ -285,19 +306,19 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
import re
|
||||
import base64
|
||||
try:
|
||||
# 1. 还原 URL 安全的 Base64 字符并解码 (杜绝乱码与 WAF 拦截)
|
||||
# [防线/容灾] 还原安全 Base64 编码,屏蔽乱码级注入风险
|
||||
pad = len(b64_alias) % 4
|
||||
if pad > 0:
|
||||
b64_alias += '=' * (4 - pad)
|
||||
b64_alias = b64_alias.replace('-', '+').replace('_', '/')
|
||||
raw_alias = base64.b64decode(b64_alias).decode('utf-8', errors='ignore')
|
||||
|
||||
# 2. 强清洗:杜绝 TG Markdown 崩溃,严格限制中英数,最大20字符
|
||||
# 强格式清洗:剔除潜在非法字符,保护 TG 面板不被恶意解析撑爆
|
||||
decoded_alias = raw_alias.replace('_', '-')
|
||||
safe_alias = re.sub(r'[^a-zA-Z0-9\-\u4e00-\u9fa5]', '', decoded_alias)[:20]
|
||||
|
||||
if safe_alias:
|
||||
# 3. 强容错读写 config.conf (引入 fcntl 排他锁与 r+ 模式防并发清空)
|
||||
# [底层交互] 利用 fcntl 独占锁执行安全写操作,防止并发数据被截断
|
||||
config_path = '/opt/ip_sentinel/config.conf'
|
||||
import fcntl
|
||||
with open(config_path, 'r+', encoding='utf-8', errors='ignore') as f:
|
||||
@@ -319,7 +340,6 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
f.truncate()
|
||||
fcntl.flock(f, fcntl.LOCK_UN)
|
||||
|
||||
# [v3.5.2 极致丝滑] 移除向 TG 推送冗余报文的逻辑,直接向 Master 回执成功状态即可
|
||||
self.send_response(200)
|
||||
self.send_header("Content-type", "text/plain")
|
||||
self.end_headers()
|
||||
@@ -335,7 +355,7 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.end_headers()
|
||||
self.wfile.write(b"400 Bad Request: Invalid Characters\n")
|
||||
|
||||
# ================== [v3.5.3 新增: 模块动态启停接口] ==================
|
||||
# 路由 7: 功能模块动态起停 (Feature Flag API)
|
||||
elif req_path == '/trigger_toggle':
|
||||
mod_name = query.get('mod', [''])[0]
|
||||
target_state = query.get('state', [''])[0].lower()
|
||||
@@ -381,10 +401,9 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
self.end_headers()
|
||||
self.wfile.write(f"500 Internal Error: {str(e)}\n".encode('utf-8'))
|
||||
|
||||
# ================== [v3.6.0 新增: 零信任 OTA 远程静默升级路由] ==================
|
||||
# 路由 8: 零信任 OTA 远程热更新链路
|
||||
elif req_path == '/trigger_ota':
|
||||
try:
|
||||
# 动态读取最新 config 内存态
|
||||
config_mem = {}
|
||||
config_path = '/opt/ip_sentinel/config.conf'
|
||||
if os.path.exists(config_path):
|
||||
@@ -395,30 +414,28 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
key, val = line.split('=', 1)
|
||||
config_mem[key] = val.strip('"\'')
|
||||
|
||||
# 🛡️ 熔断校验 1: Agent 本地是否开启了 OTA 授权
|
||||
# [OTA 熔断器 1] 核验 Agent 本地策略是否授予了更新权限
|
||||
if config_mem.get('ENABLE_OTA', 'false').lower() != 'true':
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.wfile.write(b"403 Forbidden: OTA Upgrade Disabled locally\n")
|
||||
return
|
||||
|
||||
# 🛡️ 熔断校验 2: 是否处于官方公共网关下 (强行硬编码拦截)
|
||||
# [OTA 熔断器 2] 检测官方网关硬编码限制,防范越权投毒
|
||||
if config_mem.get('TG_TOKEN', '') == 'OFFICIAL_GATEWAY_MODE':
|
||||
self.send_response(403)
|
||||
self.end_headers()
|
||||
self.wfile.write(b"403 Forbidden: OTA strictly disabled under Public Gateway mode\n")
|
||||
return
|
||||
|
||||
# 校验通过,立即返回 200 回执,释放 Master 连接池
|
||||
self.send_response(200)
|
||||
self.send_header("Content-type", "text/plain")
|
||||
self.end_headers()
|
||||
self.wfile.write(b"Action Accepted: trigger_ota\n")
|
||||
|
||||
# [修复] 逃逸 Systemd Cgroup,并引入 bash -n 语法树校验防砖机制
|
||||
# [防线/容灾] 逃逸 Cgroup 隔离沙盒,并引入前置脚本语法校验防砖
|
||||
import shutil
|
||||
import base64
|
||||
# 动态提取部署时的源地址,废除强制写死 main 分支,保障隔离测试环境
|
||||
repo_url = "https://raw.githubusercontent.com/hotyue/IP-Sentinel/main"
|
||||
if os.path.exists('/opt/ip_sentinel/core/install.sh'):
|
||||
with open('/opt/ip_sentinel/core/install.sh', 'r') as f:
|
||||
@@ -427,15 +444,13 @@ class AgentHandler(http.server.BaseHTTPRequestHandler):
|
||||
repo_url = line.split('=', 1)[1].strip('"\'')
|
||||
break
|
||||
|
||||
# 动态构建报错回执文本 (第一层 Base64 隔离换行与特殊字符)
|
||||
err_msg = f"❌ **OTA 熔断告警**\n📍 节点: `{config_mem.get('NODE_ALIAS', '未知')}`\n⚠️ 原因: 脚本语法校验(bash -n)未通过,下载可能不完整。\n🚀 状态: 升级已取消,节点安全。"
|
||||
err_msg_b64 = base64.b64encode(err_msg.encode('utf-8')).decode('utf-8')
|
||||
|
||||
tg_url = config_mem.get('TG_API_URL', '')
|
||||
chat_id = config_mem.get('CHAT_ID', '')
|
||||
|
||||
# [v3.6.3 究极防御] 采用 Base64 将整个 OTA 执行脚本封装 (第二层隔离)
|
||||
# 彻底免疫因为 python 变量掺杂引号而导致的 shell 注入或截断
|
||||
# 将升级逻辑进行 Base64 深层封装,免疫 Popen 或 Systemd 传递带来的指令注入风险
|
||||
ota_script = f"""
|
||||
export SILENT_OTA="true"
|
||||
curl -fsSL {repo_url}/core/install.sh -o /tmp/ota_agent.sh
|
||||
@@ -449,13 +464,11 @@ fi
|
||||
"""
|
||||
ota_script_b64 = base64.b64encode(ota_script.encode('utf-8')).decode('utf-8')
|
||||
|
||||
# 安全解包并执行
|
||||
if shutil.which("systemd-run"):
|
||||
full_cmd = f"systemd-run --quiet --no-block bash -c \"echo '{ota_script_b64}' | base64 -d | bash\""
|
||||
else:
|
||||
full_cmd = f"nohup bash -c \"echo '{ota_script_b64}' | base64 -d | bash\" >/dev/null 2>&1 &"
|
||||
|
||||
# 彻底统一为 os.system,消灭最后一个可能游离的 Popen 僵尸进程
|
||||
os.system(full_cmd)
|
||||
|
||||
except Exception as e:
|
||||
@@ -471,12 +484,14 @@ fi
|
||||
pass
|
||||
|
||||
import socket
|
||||
# ================== [v3.0.3 变更: 引入多线程模型抵抗 Slowloris 攻击] ==================
|
||||
class ThreadedServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
|
||||
allow_reuse_address = True # 开启端口复用,防止热重启时端口冲突
|
||||
|
||||
# [核心修复] 显式关闭 V6ONLY 参数,治愈大量云主机纯双栈下的 IPv4 耳聋现象
|
||||
# ----------------------------------------------------------
|
||||
# [核心架构] 多线程非阻塞 Socket 模型 (抵抗 Slowloris 及阻塞攻击)
|
||||
# ----------------------------------------------------------
|
||||
class DualStackServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
|
||||
allow_reuse_address = True
|
||||
def server_bind(self):
|
||||
# [核心魔改] 强行解除 Linux/Unix 的 IPv6 独占锁
|
||||
# 实现一个 Socket 对象同时接管 IPv4 (0.0.0.0) 和 IPv6 (::) 的全域监听防漏接机制
|
||||
if self.address_family == socket.AF_INET6:
|
||||
try:
|
||||
self.socket.setsockopt(socket.IPPROTO_IPV6, socket.IPV6_V6ONLY, 0)
|
||||
@@ -484,21 +499,27 @@ class ThreadedServer(socketserver.ThreadingMixIn, socketserver.TCPServer):
|
||||
pass
|
||||
super().server_bind()
|
||||
|
||||
# [v4.2.2 终极架构] 彻底抛弃配置文件的 IP 束缚,强行探测系统底层的双栈能力
|
||||
bind_addr = "::"
|
||||
address_family = socket.AF_INET6
|
||||
try:
|
||||
# 1. 优先尝试监听双栈/IPv6
|
||||
ThreadedServer.address_family = socket.AF_INET6
|
||||
httpd = ThreadedServer(("::", PORT), AgentHandler)
|
||||
except Exception:
|
||||
# 2. [核心修复 Issue #23] 若系统内核已禁用 IPv6,抛弃报错,智能回退至纯 IPv4 监听
|
||||
ThreadedServer.address_family = socket.AF_INET
|
||||
httpd = ThreadedServer(("0.0.0.0", PORT), AgentHandler)
|
||||
# 探针:如果机器是纯 IPv4 (连内核级的 IPv6 模块都没有被加载),强绑 :: 会引发 OSError,此时自动降维
|
||||
s = socket.socket(socket.AF_INET6, socket.SOCK_STREAM)
|
||||
s.close()
|
||||
except OSError:
|
||||
bind_addr = "0.0.0.0"
|
||||
address_family = socket.AF_INET
|
||||
|
||||
# ================== [v3.6.3 核心: 挂载 TLS 加密隧道 (强制装甲版)] ==================
|
||||
DualStackServer.address_family = address_family
|
||||
httpd = DualStackServer((bind_addr, PORT), AgentHandler)
|
||||
|
||||
# ----------------------------------------------------------
|
||||
# [加密通信] 强制全网挂载 TLS 加密隧道上下文
|
||||
# ----------------------------------------------------------
|
||||
import ssl
|
||||
cert_path = '/opt/ip_sentinel/core/cert.pem'
|
||||
key_path = '/opt/ip_sentinel/core/key.pem'
|
||||
|
||||
# 全网强制启用 TLS 装甲,彻底消灭 HTTP 裸奔漏洞
|
||||
if os.path.exists(cert_path) and os.path.exists(key_path):
|
||||
try:
|
||||
context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
|
||||
@@ -506,15 +527,12 @@ if os.path.exists(cert_path) and os.path.exists(key_path):
|
||||
httpd.socket = context.wrap_socket(httpd.socket, server_side=True)
|
||||
except Exception as e:
|
||||
print(f"SSL 隧道构建失败,退化为 HTTP: {e}")
|
||||
# ======================================================================================
|
||||
|
||||
try:
|
||||
httpd.serve_forever()
|
||||
except Exception as e:
|
||||
sys.exit(1)
|
||||
# ====================================================================================
|
||||
EOF
|
||||
|
||||
# --- [重点升级 3: 移交系统级守护进程接管 (阻塞模式)] ---
|
||||
echo "🚀 [Agent] 正在启动 Webhook 监听服务 (端口: $AGENT_PORT)..."
|
||||
exec python3 "${INSTALL_DIR}/core/webhook.py" "$AGENT_PORT"
|
||||
657
core/install.sh
657
core/install.sh
File diff suppressed because it is too large
Load Diff
@@ -1,14 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: mod_google.sh (Google 业务逻辑模块 - 动态锚点版)
|
||||
# 核心功能: 执行坐标微抖动、模拟真实阅读时长、会话行为拉伸
|
||||
# 脚本名称: mod_google.sh
|
||||
# 核心功能: 区域网络模拟、行为轨迹拉伸、地理定位锚定
|
||||
# ==========================================================
|
||||
|
||||
MODULE_NAME="Google"
|
||||
CONFIG_FILE="/opt/ip_sentinel/config.conf"
|
||||
|
||||
# 1. 加载冷数据配置
|
||||
# --- [环境预载] ---
|
||||
if [ -f "$CONFIG_FILE" ]; then
|
||||
source "$CONFIG_FILE"
|
||||
else
|
||||
@@ -16,24 +16,22 @@ else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 容错机制:如果父进程没有传递 log 函数,则本地定义一个作为 fallback (v3.4.0 引入版本探针)
|
||||
# [容灾机制] 若宿主环境未注入日志函数,则启动 Fallback 接管
|
||||
if ! type log >/dev/null 2>&1; then
|
||||
log() {
|
||||
# [v3.4.0 核心] 提取当前配置中的版本锚点
|
||||
# [版本锚定] 提取运行时动态版本标识
|
||||
local local_ver="${AGENT_VERSION:-未知}"
|
||||
|
||||
# 保证日志目录存在
|
||||
mkdir -p "${INSTALL_DIR}/logs"
|
||||
|
||||
# 日志格式注入 [版本号] 追踪标识
|
||||
# [时区对齐] 强制采用绝对 UTC 时间消除跨域日志偏移
|
||||
local core_msg=$(printf "[v%-5s] [%-5s] [%-7s] [%s] %s" "$local_ver" "$2" "$1" "$REGION_CODE" "$3")
|
||||
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $core_msg" >> "${INSTALL_DIR}/logs/sentinel.log"
|
||||
echo "[$(date -u '+%Y-%m-%d %H:%M:%S UTC')] $core_msg" >> "${INSTALL_DIR}/logs/sentinel.log"
|
||||
|
||||
# 强制推送到 Systemd Journal (如果系统支持)
|
||||
# [系统挂载] 桥接至 Systemd Journal 守护日志
|
||||
if command -v logger >/dev/null 2>&1; then
|
||||
logger -t ip-sentinel "$core_msg"
|
||||
else
|
||||
# 降级输出到 stdout,让 Systemd 捕获
|
||||
echo "$core_msg"
|
||||
fi
|
||||
}
|
||||
@@ -41,7 +39,7 @@ fi
|
||||
|
||||
log "$MODULE_NAME" "START" "========== 唤醒网络模拟器 [区域: $REGION_NAME] =========="
|
||||
|
||||
# 2. 动态加载热数据 (设备指纹池 和 专属搜索词库)
|
||||
# --- [数据装配] ---
|
||||
UA_FILE="${INSTALL_DIR}/data/user_agents.txt"
|
||||
KW_FILE="${INSTALL_DIR}/data/keywords/kw_${REGION_CODE}.txt"
|
||||
|
||||
@@ -50,11 +48,16 @@ if [ ! -f "$UA_FILE" ] || [ ! -f "$KW_FILE" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 将文本按行读取到数组中 (并自动过滤空行)
|
||||
mapfile -t UA_POOL < <(grep -v '^$' "$UA_FILE")
|
||||
mapfile -t KEYWORDS < <(grep -v '^$' "$KW_FILE")
|
||||
mapfile -t KEYWORDS < <(grep -v '^[[:space:]]*$' "$KW_FILE")
|
||||
|
||||
# --- [工具函数] ---
|
||||
# [v4.1.5 修复] 防止关键词池为空导致 RANDOM % 0 直接语法崩溃
|
||||
if [ ${#KEYWORDS[@]} -eq 0 ]; then
|
||||
log "$MODULE_NAME" "ERROR" "关键词池为空,终止执行。"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# --- [辅助运算] ---
|
||||
get_random_coord() {
|
||||
local base=$1
|
||||
local range=$2
|
||||
@@ -62,60 +65,101 @@ get_random_coord() {
|
||||
awk "BEGIN {print ($base + $offset)}"
|
||||
}
|
||||
|
||||
# --- [环境初始化] ---
|
||||
# [v3.3.1修改] 优先读取对外公网面孔作为哈希种子,兼容 NAT 机的空 BIND_IP
|
||||
# --- [身份画像构建] ---
|
||||
# [防线提取] 优先捕获固化的公网面孔作为种子
|
||||
CURRENT_IP="${PUBLIC_IP:-${BIND_IP:-Unknown}}"
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [V3.1.5] 哈希锚定法 (Hash-Seeded Persona)
|
||||
# 利用 IP 算力固定 3 个永久化专属指纹,破除僵尸网络同质化特征
|
||||
# [指纹固化] 哈希锚定法 (Hash-Seeded Persona)
|
||||
# 基于 IP 算力固定会话指纹池,彻底破除僵尸网络同质化特征
|
||||
# -----------------------------------------------------------
|
||||
TOTAL_UA=${#UA_POOL[@]}
|
||||
if [ "$TOTAL_UA" -gt 0 ]; then
|
||||
# 1. 以本地锁定的公网 IP 为种子,计算固定不变的 CRC32 哈希值
|
||||
SEED=$(echo -n "$CURRENT_IP" | cksum | awk '{print $1}')
|
||||
|
||||
# 2. 利用确定的种子和质数乘数,在全球 4000 的库中计算出本机的 3 个绝对专属坐标
|
||||
IDX1=$(( SEED % TOTAL_UA ))
|
||||
IDX2=$(( (SEED * 17) % TOTAL_UA ))
|
||||
IDX3=$(( (SEED * 31) % TOTAL_UA ))
|
||||
|
||||
# 3. 将绝对坐标映射为该节点的“专属设备库”
|
||||
MY_UA_POOL=("${UA_POOL[$IDX1]}" "${UA_POOL[$IDX2]}" "${UA_POOL[$IDX3]}")
|
||||
|
||||
# 4. 本次会话从这 3 台专属设备中随机挑选 1 台进行模拟
|
||||
SESSION_UA=${MY_UA_POOL[$RANDOM % 3]}
|
||||
else
|
||||
# 兜底容错机制
|
||||
# [极简兜底] 降维指纹防御崩溃
|
||||
SESSION_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
|
||||
fi
|
||||
# 位置锁定:在基准点(比如东京新宿)附近 3 公里内随机生成本次上网的“固定咖啡馆”坐标
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [v4.1.4 平台身份提取器 (Persona Mapper)]
|
||||
# 识别当前指纹的系统平台,杜绝跨平台的底层探针穿帮
|
||||
# -----------------------------------------------------------
|
||||
UA_PLATFORM="windows"
|
||||
if [[ "$SESSION_UA" == *"Android"* ]]; then
|
||||
UA_PLATFORM="android"
|
||||
elif [[ "$SESSION_UA" == *"iPhone"* ]] || [[ "$SESSION_UA" == *"iPad"* ]]; then
|
||||
UA_PLATFORM="ios"
|
||||
elif [[ "$SESSION_UA" == *"Macintosh"* ]]; then
|
||||
UA_PLATFORM="macos"
|
||||
elif [[ "$SESSION_UA" == *"Linux"* ]]; then
|
||||
UA_PLATFORM="linux"
|
||||
fi
|
||||
|
||||
# [v4.1.5 防御] 坐标缺失直接终止,禁止生成错误地理画像
|
||||
if ! [[ "$BASE_LAT" =~ ^-?[0-9]+(\.[0-9]+)?$ ]] || \
|
||||
! [[ "$BASE_LON" =~ ^-?[0-9]+(\.[0-9]+)?$ ]]; then
|
||||
log "$MODULE_NAME" "ERROR" "区域坐标缺失或非法,拒绝执行本轮会话。"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# [LBS 锚定] 在基准战区内生成固定范围内的微抖动咖啡馆坐标
|
||||
SESSION_BASE_LAT=$(get_random_coord $BASE_LAT 270)
|
||||
SESSION_BASE_LON=$(get_random_coord $BASE_LON 270)
|
||||
|
||||
# 【核心升级】随机决定本次上网深度 (6 - 10 个复合动作,配合高频长效拉伸)
|
||||
TOTAL_ACTIONS=$((6 + RANDOM % 5))
|
||||
# 【核心升级】随机决定本次上网深度 (5 - 8 个复合动作,配合高频长效拉伸)
|
||||
TOTAL_ACTIONS=$((5 + RANDOM % 4))
|
||||
|
||||
log "$MODULE_NAME" "INFO " "当前出网 IP: $CURRENT_IP"
|
||||
log "$MODULE_NAME" "INFO " "设备指纹锁定: ${SESSION_UA:0:45}..."
|
||||
log "$MODULE_NAME" "INFO " "平台推断: [$UA_PLATFORM] "
|
||||
log "$MODULE_NAME" "INFO " "虚拟驻留坐标: $SESSION_BASE_LAT, $SESSION_BASE_LON"
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [V3.2.1 热修复] 网络锚定与协议自适应构建
|
||||
# 强制 curl 绑定网卡,并自动匹配 IPv4/v6 协议,杜绝 curl 冲突报错
|
||||
# [v4.1.2] Cookie 持久化身份库 (Google 专属物理隔离)
|
||||
# 构建真实的 Session 连续性,打破“每分钟失忆”的机器人特征
|
||||
# -----------------------------------------------------------
|
||||
CURL_BIND_OPT=""
|
||||
DYNAMIC_IP_PREF="-${IP_PREF:-4}" # 默认提取用户配置
|
||||
COOKIE_DIR="${INSTALL_DIR}/data/cookies"
|
||||
mkdir -p "$COOKIE_DIR"
|
||||
|
||||
NODE_HASH=$(echo -n "$CURRENT_IP" | cksum | awk '{print $1}')
|
||||
COOKIE_FILE="${COOKIE_DIR}/google_${NODE_HASH}.txt"
|
||||
|
||||
# [互斥锁] 防止会话重叠导致的 Cookie 文件读写冲突
|
||||
LOCK_FILE="${COOKIE_FILE}.lock"
|
||||
exec 200>"$LOCK_FILE"
|
||||
flock -n 200 || {
|
||||
log "$MODULE_NAME" "WARN " "检测到已有 Google 会话运行,跳过本轮。"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# [v4.1.2 磁盘防御] 定期清理超过 14 天的废弃 Cookie,防止长期挂机导致 I/O 拥堵
|
||||
find "$COOKIE_DIR" -type f -name "google_*.txt" -mtime +14 -delete 2>/dev/null || true
|
||||
|
||||
log "$MODULE_NAME" "INFO " "Cookie 身份库已挂载: ${COOKIE_FILE}"
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [网络栈探底] 协议自适应与出站死锁
|
||||
# -----------------------------------------------------------
|
||||
CURL_BIND_ARGS=()
|
||||
DYNAMIC_IP_PREF="-${IP_PREF:-4}"
|
||||
|
||||
if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\.]+$ ]]; then
|
||||
# [v3.6.3 容错层补丁] 探测物理网卡/虚拟 IP 存活状态
|
||||
# [防线校验] 探测物理网卡存活状态,防 IP 漂移引发通信雪崩
|
||||
RAW_BIND_IP=$(echo "$BIND_IP" | tr -d '[]')
|
||||
if ! ip addr show 2>/dev/null | grep -qw "$RAW_BIND_IP"; then
|
||||
log "$MODULE_NAME" "WARN " "检测到配置的出口 IP ($RAW_BIND_IP) 已丢失,自动降级为系统默认路由出网!"
|
||||
CURL_BIND_OPT=""
|
||||
# [v4.1.5 修复] 使用 -Fq 替代 -qw,防止 IPv6 冒号被误认为单词边界导致网卡死锁失效
|
||||
if ! ip addr show 2>/dev/null | grep -Fq "$RAW_BIND_IP"; then
|
||||
log "$MODULE_NAME" "WARN " "检测到配置的出口 IP ($RAW_BIND_IP) 已丢失,自动降级为系统默认路由出网!"
|
||||
CURL_BIND_ARGS=()
|
||||
else
|
||||
CURL_BIND_OPT="--interface $BIND_IP"
|
||||
# 智能探测:带冒号为 V6,带点号为 V4
|
||||
CURL_BIND_ARGS=(--interface "$BIND_IP")
|
||||
if [[ "$BIND_IP" == *":"* ]]; then
|
||||
DYNAMIC_IP_PREF="-6"
|
||||
log "$MODULE_NAME" "INFO " "底层路由锁定: 绑定 IPv6 出口及协议 ($BIND_IP)"
|
||||
@@ -126,88 +170,259 @@ if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\.]+$ ]]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# --- [行为循环模拟] ---
|
||||
# [v4.1.5 修复] 业务域 Referer 隔离池初始化
|
||||
# 防止出现从 Apple 探针直接跳转到 Google Maps 的反人类机器行为
|
||||
REF_SEARCH=""
|
||||
REF_NEWS=""
|
||||
REF_MAPS=""
|
||||
REF_ECO=""
|
||||
|
||||
# --- [会话漫游模拟] ---
|
||||
for ((i=1; i<=TOTAL_ACTIONS; i++)); do
|
||||
# 模拟真实移动设备拿在手里时的 GPS 信号微抖动 (范围约 10 米)
|
||||
# [LBS 微抖动] 模拟人类手持设备时的 GPS 细微漂移
|
||||
ACTION_LAT=$(get_random_coord $SESSION_BASE_LAT 1)
|
||||
ACTION_LON=$(get_random_coord $SESSION_BASE_LON 1)
|
||||
|
||||
# 随机抽取一个符合当地特征的热点搜索词
|
||||
RAND_KEY=${KEYWORDS[$RANDOM % ${#KEYWORDS[@]}]}
|
||||
ENCODED_KEY=$(echo "$RAND_KEY" | jq -sRr @uri)
|
||||
RAND_KEY="${KEYWORDS[$((RANDOM % ${#KEYWORDS[@]}))]}"
|
||||
# [v4.1.6 修复] jq 缺失时自动降级为纯文本编码,防止关键词池熵塌缩
|
||||
if command -v jq >/dev/null 2>&1; then
|
||||
ENCODED_KEY=$(printf '%s' "$RAND_KEY" | jq -sRr @uri 2>/dev/null)
|
||||
else
|
||||
ENCODED_KEY=$(printf '%s' "$RAND_KEY" | sed 's/ /+/g')
|
||||
fi
|
||||
|
||||
[ -z "$ENCODED_KEY" ] && ENCODED_KEY=$(printf '%s' "$RAND_KEY" | tr ' ' '+')
|
||||
|
||||
# 随机选择一种上网行为
|
||||
ACTION_TYPE=$((1 + RANDOM % 4))
|
||||
# [v4.1.4] 平台级动作轮盘:基于 UA_PLATFORM 构建专属行为矩阵
|
||||
ACTION_DICE=$((RANDOM % 100))
|
||||
TARGET_URL=""
|
||||
ACTION_LOG=""
|
||||
|
||||
if [ "$UA_PLATFORM" == "android" ]; then
|
||||
if [ $ACTION_DICE -lt 25 ]; then
|
||||
TARGET_URL="https://www.google.com/search?q=${ENCODED_KEY}&${LANG_PARAMS}"
|
||||
ACTION_LOG="Search "
|
||||
elif [ $ACTION_DICE -lt 55 ]; then
|
||||
TARGET_URL="https://news.google.com/home?${LANG_PARAMS}"
|
||||
ACTION_LOG="News "
|
||||
elif [ $ACTION_DICE -lt 85 ]; then
|
||||
TARGET_URL="https://www.google.com/maps/search/${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}"
|
||||
ACTION_LOG="Maps "
|
||||
else
|
||||
# Android 专属底层网络探针
|
||||
TARGET_URL="https://connectivitycheck.gstatic.com/generate_204"
|
||||
ACTION_LOG="NetTest"
|
||||
fi
|
||||
elif [ "$UA_PLATFORM" == "ios" ] || [ "$UA_PLATFORM" == "macos" ]; then
|
||||
if [ $ACTION_DICE -lt 30 ]; then
|
||||
TARGET_URL="https://www.google.com/search?q=${ENCODED_KEY}&${LANG_PARAMS}"
|
||||
ACTION_LOG="Search "
|
||||
elif [ $ACTION_DICE -lt 65 ]; then
|
||||
TARGET_URL="https://news.google.com/home?${LANG_PARAMS}"
|
||||
ACTION_LOG="News "
|
||||
elif [ $ACTION_DICE -lt 90 ]; then
|
||||
TARGET_URL="https://www.google.com/maps/search/${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}"
|
||||
ACTION_LOG="Maps "
|
||||
else
|
||||
# Apple 专属的 Captive Portal 探针,杜绝跨平台穿帮
|
||||
TARGET_URL="https://captive.apple.com/hotspot-detect.html"
|
||||
ACTION_LOG="NetTest"
|
||||
fi
|
||||
else
|
||||
# Windows / Linux 专属行为矩阵 (无移动端探针,加入隐私/支持页漫游)
|
||||
if [ $ACTION_DICE -lt 20 ]; then
|
||||
TARGET_URL="https://www.google.com/search?q=${ENCODED_KEY}&${LANG_PARAMS}"
|
||||
ACTION_LOG="Search "
|
||||
elif [ $ACTION_DICE -lt 60 ]; then
|
||||
TARGET_URL="https://news.google.com/home?${LANG_PARAMS}"
|
||||
ACTION_LOG="News "
|
||||
elif [ $ACTION_DICE -lt 80 ]; then
|
||||
# 引入桌面端低危生态池漫游
|
||||
LOW_RISK_ECO=("https://about.google/" "https://safety.google/" "https://support.google.com/?hl=${LANG_ACCEPT%%,*}")
|
||||
TARGET_URL="${LOW_RISK_ECO[$((RANDOM % ${#LOW_RISK_ECO[@]}))]}"
|
||||
ACTION_LOG="EcoRoam"
|
||||
else
|
||||
TARGET_URL="https://www.google.com/maps/search/${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}"
|
||||
ACTION_LOG="Maps "
|
||||
fi
|
||||
fi
|
||||
|
||||
# [V3.2.1 热修复] 注入 $CURL_BIND_OPT 与 $DYNAMIC_IP_PREF 协议自适应
|
||||
case $ACTION_TYPE in
|
||||
1) # 搜索行为
|
||||
CODE=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \
|
||||
"https://www.google.com/search?q=${ENCODED_KEY}&${LANG_PARAMS}")
|
||||
;;
|
||||
2) # 浏览本土新闻
|
||||
CODE=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -m 15 -s -L -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \
|
||||
"https://news.google.com/home?${LANG_PARAMS}")
|
||||
;;
|
||||
3) # 地图坐标查询
|
||||
CODE=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -m 15 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \
|
||||
"https://www.google.com/maps/search/$${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}")
|
||||
;;
|
||||
4) # 触发移动端系统底层位置检测像素
|
||||
CODE=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -m 10 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \
|
||||
"https://connectivitycheck.gstatic.com/generate_204")
|
||||
;;
|
||||
# [v4.1.5 修复] 匹配当前业务对应的 Referer 来源
|
||||
CTX_REF=""
|
||||
case "$ACTION_LOG" in
|
||||
"Search "*) CTX_REF="$REF_SEARCH" ;;
|
||||
"News "*) CTX_REF="$REF_NEWS" ;;
|
||||
"Maps "*) CTX_REF="$REF_MAPS" ;;
|
||||
"EcoRoam"*) CTX_REF="$REF_ECO" ;;
|
||||
esac
|
||||
|
||||
# [v4.1.3 & v4.1.5 修复] 统一执行 curl,70% 概率携带同业务域 Referer
|
||||
if [ -n "$CTX_REF" ] && [ $((RANDOM % 100)) -lt 70 ]; then
|
||||
CODE=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" -m 15 -s -L -o /dev/null -w "%{http_code}" \
|
||||
-b "$COOKIE_FILE" -c "$COOKIE_FILE" -A "$SESSION_UA" -H "Referer: $CTX_REF" "$TARGET_URL")
|
||||
else
|
||||
CODE=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" -m 15 -s -L -o /dev/null -w "%{http_code}" \
|
||||
-b "$COOKIE_FILE" -c "$COOKIE_FILE" -A "$SESSION_UA" "$TARGET_URL")
|
||||
fi
|
||||
CURL_EXIT=$?
|
||||
|
||||
log "$MODULE_NAME" "EXEC " "动作[$i/$TOTAL_ACTIONS]完成 | HTTP状态: $CODE | 抖动坐标: $ACTION_LAT, $ACTION_LON"
|
||||
# 错误码精准映射(不破坏原有的 SCORE 送中判定,只让动作日志更清晰)
|
||||
if [ $CURL_EXIT -ne 0 ]; then
|
||||
case $CURL_EXIT in
|
||||
6) CODE="ERR_DNS" ;;
|
||||
7) CODE="ERR_CONN" ;;
|
||||
28) CODE="ERR_TIMEOUT" ;;
|
||||
35) CODE="ERR_TLS" ;;
|
||||
56) CODE="ERR_RESET" ;;
|
||||
*) CODE="ERR_${CURL_EXIT}" ;;
|
||||
esac
|
||||
log "$MODULE_NAME" "WARN " "动作[$i/$TOTAL_ACTIONS]异常 | 底层错误: $CODE | 抖动坐标: $ACTION_LAT, $ACTION_LON"
|
||||
|
||||
# [v4.1.5] 请求失败,清空当前业务链的 Referer
|
||||
case "$ACTION_LOG" in
|
||||
"Search "*) REF_SEARCH="" ;;
|
||||
"News "*) REF_NEWS="" ;;
|
||||
"Maps "*) REF_MAPS="" ;;
|
||||
"EcoRoam"*) REF_ECO="" ;;
|
||||
esac
|
||||
else
|
||||
log "$MODULE_NAME" "EXEC " "动作[$i/$TOTAL_ACTIONS]完成 | HTTP状态: $CODE | 抖动坐标: $ACTION_LAT, $ACTION_LON"
|
||||
|
||||
# [v4.1.5] 请求成功,记录当前 URL 作为同业务下一次跳转的 Referer (2xx 或 3xx 视为有效)
|
||||
if [[ "$CODE" =~ ^[23] ]]; then
|
||||
case "$ACTION_LOG" in
|
||||
"Search "*) REF_SEARCH="$TARGET_URL" ;;
|
||||
"News "*) REF_NEWS="$TARGET_URL" ;;
|
||||
"Maps "*) REF_MAPS="$TARGET_URL" ;;
|
||||
"EcoRoam"*) REF_ECO="$TARGET_URL" ;;
|
||||
esac
|
||||
fi
|
||||
fi
|
||||
|
||||
# 【核心升级】行为拉伸:每次动作后强制休眠 90 - 150 秒
|
||||
# 结合动作总数,总耗时将稳定在 10 分钟 到 25 分钟之间
|
||||
# 【核心升级】行为拉伸:每次动作后强制休眠 90 - 120 秒
|
||||
# 结合动作总数,总耗时将稳定在 10 分钟 到 20 分钟之间
|
||||
if [ $i -lt $TOTAL_ACTIONS ]; then
|
||||
SLEEP_TIME=$((90 + RANDOM % 61))
|
||||
# 【时间收敛修复】休眠控制在 45-75 秒,防止跨周期重叠导致进程被强杀
|
||||
SLEEP_TIME=$((45 + RANDOM % 31))
|
||||
log "$MODULE_NAME" "WAIT " "阅读当前页面内容,模拟停留 $SLEEP_TIME 秒..."
|
||||
sleep $SLEEP_TIME
|
||||
sleep "$SLEEP_TIME"
|
||||
fi
|
||||
done
|
||||
|
||||
# --- [结果纠偏自检 (V3.2.1 高精度容错版)] ---
|
||||
# [V3.2.1 热修复] 探针同样应用 $DYNAMIC_IP_PREF 协议自适应
|
||||
PROBE_RESULT=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -m 15 -s -L -o /dev/null -w "%{http_code}|%{url_effective}" https://www.google.com)
|
||||
# -----------------------------------------------------------
|
||||
# [态势感知] 三核探测雷达 (跳转 / Premium / Music)
|
||||
# -----------------------------------------------------------
|
||||
log "$MODULE_NAME" "INFO " "启动三核交叉验证 (URL跳转 + YT Premium + YT Music) 穿透获取 GeoIP..."
|
||||
|
||||
# 分离状态码与 URL
|
||||
PROBE_CODE=$(echo "$PROBE_RESULT" | cut -d'|' -f1)
|
||||
FINAL_URL=$(echo "$PROBE_RESULT" | cut -d'|' -f2)
|
||||
# 核心 1: 传统 URL 跳转探测 (请求 www 才能触发准确跳转)
|
||||
# [v4.1.2] 追加持久化 Cookie
|
||||
JUMP_HDR=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" -m 10 -sI -b "$COOKIE_FILE" -c "$COOKIE_FILE" "http://www.google.com/")
|
||||
JUMP_LOC=$(echo "$JUMP_HDR" | grep -i "^location:" | tr -d '\r\n')
|
||||
JUMP_GL=""
|
||||
|
||||
# 0. 致命拦截:网络断开、DNS 解析失败或严重超时
|
||||
if [ "$PROBE_CODE" == "000" ] || [ -z "$FINAL_URL" ]; then
|
||||
STATUS="🚨 探针失效 (网络阻断或底层路由异常)"
|
||||
if [ -z "$JUMP_LOC" ]; then
|
||||
JUMP_GL="US"
|
||||
elif [[ "$JUMP_LOC" == *".google.cn"* ]] || [[ "$JUMP_LOC" == *"gl=CN"* ]]; then
|
||||
JUMP_GL="CN"
|
||||
elif [[ "$JUMP_LOC" == *"gl="* ]]; then
|
||||
JUMP_GL=$(echo "$JUMP_LOC" | grep -o 'gl=[A-Za-z]\{2\}' | head -n 1 | cut -d'=' -f2 | tr 'a-z' 'A-Z')
|
||||
else
|
||||
# 核心战术:精准提取最终 URL 的域名部分
|
||||
ACTUAL_DOMAIN=$(echo "$FINAL_URL" | awk -F/ '{print $3}')
|
||||
|
||||
# [V3.2.1 优化] 使用通配符 * 剔除任意前缀 (无论是 www.google. 还是 ipv4.google.)
|
||||
ACTUAL_SUFFIX=${ACTUAL_DOMAIN#*google.}
|
||||
JUMP_DOMAIN=$(echo "$JUMP_LOC" | grep -o 'google\.[a-z\.]*' | head -n 1 | sed 's/google\.//')
|
||||
case "$JUMP_DOMAIN" in
|
||||
"com") JUMP_GL="US" ;;
|
||||
"com.hk") JUMP_GL="HK" ;;
|
||||
"com.tw") JUMP_GL="TW" ;;
|
||||
"co.jp") JUMP_GL="JP" ;;
|
||||
"co.uk") JUMP_GL="GB" ;;
|
||||
"co.kr") JUMP_GL="KR" ;;
|
||||
"co.in") JUMP_GL="IN" ;;
|
||||
"co.id") JUMP_GL="ID" ;;
|
||||
"co.th") JUMP_GL="TH" ;;
|
||||
"com.sg") JUMP_GL="SG" ;;
|
||||
"com.my") JUMP_GL="MY" ;;
|
||||
"com.au") JUMP_GL="AU" ;;
|
||||
"com.br") JUMP_GL="BR" ;;
|
||||
"com.mx") JUMP_GL="MX" ;;
|
||||
"com.ar") JUMP_GL="AR" ;;
|
||||
"co.za") JUMP_GL="ZA" ;;
|
||||
"cn") JUMP_GL="CN" ;;
|
||||
"") JUMP_GL="" ;;
|
||||
*)
|
||||
LAST_EXT=$(echo "$JUMP_DOMAIN" | awk -F'.' '{print $NF}' | tr 'a-z' 'A-Z')
|
||||
if [ ${#LAST_EXT} -eq 2 ]; then
|
||||
JUMP_GL="$LAST_EXT"
|
||||
else
|
||||
JUMP_GL="US"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# 1. 优先验证:绝对匹配目标后缀 (彻底杜绝 com 包含于 com.hk 的陷阱)
|
||||
if [ "$ACTUAL_SUFFIX" == "$VALID_URL_SUFFIX" ]; then
|
||||
STATUS="✅ 目标区域达成 ($ACTUAL_SUFFIX)"
|
||||
# ==========================================================
|
||||
# [v4.2.3 修复 - PR #82 剥离探测身份]
|
||||
# 抛弃模拟人类漫游时使用的混杂老旧 UA 及污染 Cookie,
|
||||
# 强制使用绝对干净且现代的 Windows Chrome UA 发起探针裸请求,
|
||||
# 确保边缘服务器必定下发完整的 SPA 框架页面,防止 INNERTUBE 提取报错。
|
||||
# ==========================================================
|
||||
PROBE_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
|
||||
|
||||
# 2. 核心拦截:精准捕捉送中特征 (com.hk)
|
||||
elif [ "$ACTUAL_SUFFIX" == "com.hk" ]; then
|
||||
if [ "$REGION_CODE" == "HK" ]; then
|
||||
STATUS="✅ 目标区域达成 (HK 专属 com.hk)"
|
||||
extract_yt_gl() {
|
||||
grep -Eo '"(contentRegion|countryCode|INNERTUBE_CONTEXT_GL|GL)":"[A-Za-z]{2}"' | head -n 1 | cut -d'"' -f4 | tr 'a-z' 'A-Z'
|
||||
}
|
||||
|
||||
# 核心 2: YouTube Premium 区域锁嗅探
|
||||
YT_PR_GL=""
|
||||
YT_PR_HTML=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" -m 12 -s -L -A "$PROBE_UA" "https://www.youtube.com/premium")
|
||||
if [[ "$YT_PR_HTML" == *"www.google.cn"* ]]; then
|
||||
YT_PR_GL="CN"
|
||||
else
|
||||
YT_PR_GL=$(printf '%s' "$YT_PR_HTML" | extract_yt_gl)
|
||||
fi
|
||||
|
||||
# 核心 3: YouTube Music 区域锁嗅探
|
||||
YT_MU_GL=""
|
||||
YT_MU_HTML=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" -m 12 -s -L -A "$PROBE_UA" "https://music.youtube.com/")
|
||||
if [[ "$YT_MU_HTML" == *"www.google.cn"* ]]; then
|
||||
YT_MU_GL="CN"
|
||||
else
|
||||
YT_MU_GL=$(printf '%s' "$YT_MU_HTML" | extract_yt_gl)
|
||||
fi
|
||||
|
||||
# [坐标规整] 兼容横杠分割体系,并修正英区缩写
|
||||
TARGET_CC="${REGION_CODE%%-*}"
|
||||
[ "$TARGET_CC" == "UK" ] && TARGET_CC="GB"
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [终极审判] 异常过滤与一致性裁决机制
|
||||
# -----------------------------------------------------------
|
||||
IS_CN=0
|
||||
VALID_PROBES=0
|
||||
|
||||
for val in "$JUMP_GL" "$YT_PR_GL" "$YT_MU_GL"; do
|
||||
if [ -n "$val" ]; then
|
||||
((VALID_PROBES++))
|
||||
[ "$val" == "CN" ] && IS_CN=1
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $VALID_PROBES -eq 0 ]; then
|
||||
STATUS="🚨 探针失效 (三核全部熔断,可能遭严重风控拦截)"
|
||||
elif [ $IS_CN -eq 1 ]; then
|
||||
STATUS="❌ 严重高危!三核雷达判定 IP 已被中国大陆锁定 (送中)!"
|
||||
else
|
||||
# [权重仲裁] 以流媒体核心解锁状态为主导,允许基础网段跨国漂移
|
||||
YT_MATCH=0
|
||||
[ "$YT_PR_GL" == "$TARGET_CC" ] && YT_MATCH=1
|
||||
[ "$YT_MU_GL" == "$TARGET_CC" ] && YT_MATCH=1
|
||||
|
||||
if [ $YT_MATCH -eq 1 ]; then
|
||||
if [ -n "$JUMP_GL" ] && [ "$JUMP_GL" != "$TARGET_CC" ]; then
|
||||
STATUS="✅ 目标区域达成 (YT主导成功, Jump副雷达漂移至 ${JUMP_GL}) | Prem: ${YT_PR_GL:-无} | Music: ${YT_MU_GL:-无}"
|
||||
else
|
||||
STATUS="❌ 严重漂移!判定为送中区 (实际跳往 $ACTUAL_SUFFIX)"
|
||||
STATUS="✅ 目标区域达成 (Jump: ${JUMP_GL:-无} | Prem: ${YT_PR_GL:-无} | Music: ${YT_MU_GL:-无})"
|
||||
fi
|
||||
|
||||
# 3. 宽容处理:遵守 Google 无跳转新规 (严格限定必须是纯粹的 com)
|
||||
# [视觉优化] 留在 .com 代表 IP 极度纯净未被区域沙盒锁定,计入成功战绩!
|
||||
elif [ "$ACTUAL_SUFFIX" == "com" ]; then
|
||||
STATUS="✅ 目标区域达成 (免签停留 .com 通用主站)"
|
||||
|
||||
# 4. 跨区漂移:所有预判之外的后缀,全部视为异常
|
||||
else
|
||||
STATUS="⚠️ 跨区跳板漂移 (当前实际归属: $ACTUAL_SUFFIX)"
|
||||
STATUS="⚠️ 区域发生漂移!目标 $TARGET_CC,实际 (Jump: ${JUMP_GL:-无} | Prem: ${YT_PR_GL:-无} | Music: ${YT_MU_GL:-无})"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,28 +1,108 @@
|
||||
#!/bin/bash
|
||||
# ==========================================================
|
||||
# IP-Sentinel: 深海声呐 (IP 质量全维异步检测模块 v4.0.0)
|
||||
# IP-Sentinel: 深海声呐 (IP 质量全维异步检测模块)
|
||||
# 核心功能: 动态路由寻路、第三方 API 容灾获取、流媒体解锁链路剖析
|
||||
# ==========================================================
|
||||
|
||||
source /opt/ip_sentinel/config.conf
|
||||
|
||||
TARGET_IP=$(echo "${BIND_IP:-$PUBLIC_IP}" | tr -d '[]')
|
||||
IP_PROTO="${IP_PREF:-4}"
|
||||
# ==========================================================
|
||||
# 1. 动态网络锚定与协议自适应
|
||||
# 专为多 IP 站群与 NAT 架构设计,确保探针流量精准路由
|
||||
# ==========================================================
|
||||
DYNAMIC_IP_PREF="${IP_PREF:-4}"
|
||||
PROBE_ARGS=("-y" "-j" "-f") # 默认注入: 自动确认、JSON格式、明文无掩码IP
|
||||
|
||||
# 1. 静默拉取原始数据 (消除短链接 RCE 劫持风险,收编为本地固化执行)
|
||||
# [强壮正则] 支持 V4, V6 以及带有 [] 护甲的 V6 寻址
|
||||
if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\[\]\.]+$ ]]; then
|
||||
RAW_BIND_IP=$(echo "$BIND_IP" | tr -d '[]')
|
||||
# 严格探测物理网卡/虚拟 IP 存活状态,防止 IP 漂移导致探针彻底报错
|
||||
if ip addr show 2>/dev/null | grep -qw "$RAW_BIND_IP"; then
|
||||
# 挂载原生出网网卡
|
||||
PROBE_ARGS+=("-i" "$RAW_BIND_IP")
|
||||
|
||||
# 智能识别 V4 / V6,强制覆盖系统默认的 IP_PREF
|
||||
if [[ "$RAW_BIND_IP" == *":"* ]]; then
|
||||
DYNAMIC_IP_PREF="6"
|
||||
elif [[ "$RAW_BIND_IP" == *"."* ]]; then
|
||||
DYNAMIC_IP_PREF="4"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# 补齐协议版本参数 (-4 或 -6)
|
||||
PROBE_ARGS+=("-${DYNAMIC_IP_PREF}")
|
||||
|
||||
# ----------------------------------------------------------
|
||||
# 2. 智能拉取引擎 (防 RCE 与 文件防伪校验)
|
||||
# ----------------------------------------------------------
|
||||
PROBE_SCRIPT="/opt/ip_sentinel/core/ip_probe.sh"
|
||||
if [ ! -x "$PROBE_SCRIPT" ]; then
|
||||
# 若本地探针尚未就绪,直接从 GitHub 官方主干拉取底层源码,绕过未知域名
|
||||
curl -sL "https://raw.githubusercontent.com/xykt/IPQuality/main/ip.sh" -o "$PROBE_SCRIPT" 2>/dev/null
|
||||
|
||||
# [完整性校验] 验证本地残留脚本是否损坏 (防止因被墙或拦截导致本地缓存了无效的 HTML 报错页)
|
||||
if [ -f "$PROBE_SCRIPT" ] && ! grep -q "xykt" "$PROBE_SCRIPT" 2>/dev/null; then
|
||||
rm -f "$PROBE_SCRIPT"
|
||||
fi
|
||||
|
||||
if [ ! -s "$PROBE_SCRIPT" ]; then
|
||||
# [首选防线] 严格遵守从官方主干拉取,捍卫纯净底线
|
||||
curl -sL -m 10 "https://raw.githubusercontent.com/xykt/IPQuality/main/ip.sh" -o "$PROBE_SCRIPT" 2>/dev/null
|
||||
|
||||
# [文件防伪校验] 剔除因解析失效返回的污染文本,并降级至双栈 CDN 节点兜底
|
||||
if ! grep -q "xykt" "$PROBE_SCRIPT" 2>/dev/null; then
|
||||
rm -f "$PROBE_SCRIPT" 2>/dev/null
|
||||
curl -sL -m 15 "https://IP.Check.Place" -o "$PROBE_SCRIPT" 2>/dev/null
|
||||
fi
|
||||
chmod +x "$PROBE_SCRIPT" 2>/dev/null
|
||||
fi
|
||||
|
||||
# 采用本地执行,彻底封死运行时的外部投毒通道
|
||||
RAW_OUTPUT=$(timeout 180 bash "$PROBE_SCRIPT" -y -j -${IP_PROTO} -i "${TARGET_IP}" 2>/dev/null)
|
||||
# ==========================================================
|
||||
# 3. 极速预检与容灾打靶系统
|
||||
# ==========================================
|
||||
|
||||
# 2. 极致截取 JSON (无视开头的赞助商广告与不可见字符,精准提取)
|
||||
# 封装链路预检函数 (4秒极速探路,拒绝死等阻塞)
|
||||
preflight_check() {
|
||||
local curl_args=("-s" "-m" "4")
|
||||
# 提取网卡和协议约束
|
||||
for ((i=1; i<=$#; i++)); do
|
||||
if [[ "${!i}" == "-i" ]]; then
|
||||
local next=$((i+1))
|
||||
curl_args+=("--interface" "${!next}")
|
||||
elif [[ "${!i}" == "-4" ]]; then
|
||||
curl_args+=("-4")
|
||||
elif [[ "${!i}" == "-6" ]]; then
|
||||
curl_args+=("-6")
|
||||
fi
|
||||
done
|
||||
# 验证该路由设置是否能成功连通外部网络
|
||||
curl "${curl_args[@]}" "https://www.cloudflare.com/cdn-cgi/trace" >/dev/null 2>&1
|
||||
return $?
|
||||
}
|
||||
|
||||
# [寻路雷达] 阶梯式探测,保证在极端环境下的探针连通性
|
||||
FINAL_ARGS=()
|
||||
if preflight_check "${PROBE_ARGS[@]}"; then
|
||||
# 阶梯 0: 原定参数 (带 BIND_IP 和协议) 通畅
|
||||
FINAL_ARGS=("${PROBE_ARGS[@]}")
|
||||
else
|
||||
# 阶梯 1: 剥离物理网卡限制,只保留协议限制
|
||||
FALLBACK_ARGS=("-y" "-j" "-${DYNAMIC_IP_PREF}")
|
||||
if preflight_check "${FALLBACK_ARGS[@]}"; then
|
||||
FINAL_ARGS=("${FALLBACK_ARGS[@]}")
|
||||
else
|
||||
# 阶梯 2: 终极裸跑 (不限网卡,不限协议)
|
||||
FINAL_ARGS=("-y" "-j")
|
||||
fi
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 4. 终极实弹打靶与情报萃取
|
||||
# ==========================================================
|
||||
|
||||
# 确保连通性后执行探测,放宽超时阈值以给予第三方 API 充足响应时间
|
||||
RAW_OUTPUT=$(timeout 300 bash "$PROBE_SCRIPT" "${FINAL_ARGS[@]}" 2>/dev/null)
|
||||
JSON_DATA="{${RAW_OUTPUT#*\{}"
|
||||
|
||||
# 2. 提取基础物理定位与身份特征 (兼作合法性校验)
|
||||
ESC=$(printf '\033')
|
||||
JSON_DATA=$(printf "%s" "$JSON_DATA" | sed -e "s/${ESC}\[[0-9;]*[a-zA-Z]//g" -e "s/${ESC}[0-9;]*[a-zA-Z]//g" -e "s/x1b\\[[0-9;]*[a-zA-Z]//g" -e "s/x1b[0-9;]*[a-zA-Z]//g")
|
||||
IP_ADDR=$(echo "$JSON_DATA" | jq -r '.Head.IP // empty' 2>/dev/null)
|
||||
|
||||
if [ -z "$IP_ADDR" ]; then
|
||||
@@ -36,7 +116,6 @@ if [ -z "$IP_ADDR" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ -z "$IP_ADDR" ] && IP_ADDR="$PUBLIC_IP"
|
||||
ASN=$(echo "$JSON_DATA" | jq -r '.Info.ASN // "Unknown"' 2>/dev/null)
|
||||
ORG=$(echo "$JSON_DATA" | jq -r '.Info.Organization // "Unknown"' 2>/dev/null)
|
||||
CITY=$(echo "$JSON_DATA" | jq -r '.Info.City.Name // "Unknown"' 2>/dev/null)
|
||||
@@ -44,32 +123,47 @@ COUNTRY=$(echo "$JSON_DATA" | jq -r '.Info.Region.Name // "Unknown"' 2>/dev/null
|
||||
IP_TYPE=$(echo "$JSON_DATA" | jq -r '.Info.Type // "未知属性"' 2>/dev/null)
|
||||
USAGE_TYPE=$(echo "$JSON_DATA" | jq -r '.Type.Usage.IPinfo // "未知场景"' 2>/dev/null)
|
||||
|
||||
# 3. 深度欺诈与信用评估 (各大权威库联查)
|
||||
# ----------------------------------------------------------
|
||||
# 深度欺诈与信用评估 (各大权威库联查)
|
||||
# ----------------------------------------------------------
|
||||
SCAM_SCORE=$(echo "$JSON_DATA" | jq -r '.Score.SCAMALYTICS // "0"' 2>/dev/null)
|
||||
ABUSE_SCORE=$(echo "$JSON_DATA" | jq -r '.Score.AbuseIPDB // "0"' 2>/dev/null)
|
||||
IPQS_SCORE=$(echo "$JSON_DATA" | jq -r '.Score.IPQS // "0"' 2>/dev/null)
|
||||
IP2L_SCORE=$(echo "$JSON_DATA" | jq -r '.Score.IP2LOCATION // "0"' 2>/dev/null)
|
||||
FRAUD_RISK=$(echo "$JSON_DATA" | jq -r '.Score.ipapi // "0%"' 2>/dev/null)
|
||||
|
||||
# 代理/VPN 特征探针 (只要有一家认为是代理,就亮黄灯)
|
||||
# [数据清洗] 过滤 API 阻断带来的空值,确保面板展示整洁
|
||||
[ "$SCAM_SCORE" == "null" ] || [ -z "$SCAM_SCORE" ] && SCAM_SCORE="N/A"
|
||||
[ "$ABUSE_SCORE" == "null" ] || [ -z "$ABUSE_SCORE" ] && ABUSE_SCORE="N/A"
|
||||
[ "$IPQS_SCORE" == "null" ] || [ -z "$IPQS_SCORE" ] && IPQS_SCORE="N/A"
|
||||
[ "$IP2L_SCORE" == "null" ] || [ -z "$IP2L_SCORE" ] && IP2L_SCORE="N/A"
|
||||
[ "$FRAUD_RISK" == "null" ] || [ -z "$FRAUD_RISK" ] && FRAUD_RISK="N/A"
|
||||
|
||||
# [代理特征嗅探] 识别商业 VPN 或代理痕迹
|
||||
IS_PROXY="🟢 干净"
|
||||
if echo "$JSON_DATA" | jq -e '.Factor.Proxy | to_entries | any(.value == true)' >/dev/null 2>&1 || \
|
||||
echo "$JSON_DATA" | jq -e '.Factor.VPN | to_entries | any(.value == true)' >/dev/null 2>&1; then
|
||||
IS_PROXY="🟡 疑似代理/VPN"
|
||||
fi
|
||||
|
||||
# 4. 提取流媒体与 AI 解锁指标 (带解锁类型)
|
||||
# ----------------------------------------------------------
|
||||
# 提取流媒体与 AI 解锁指标
|
||||
# ----------------------------------------------------------
|
||||
parse_media() {
|
||||
local status=$(echo "$JSON_DATA" | jq -r ".Media.$1.Status // \"未知\"" 2>/dev/null)
|
||||
local reg=$(echo "$JSON_DATA" | jq -r ".Media.$1.Region // \"\"" 2>/dev/null)
|
||||
local type=$(echo "$JSON_DATA" | jq -r ".Media.$1.Type // \"\"" 2>/dev/null)
|
||||
|
||||
if [[ "$status" == *"解锁"* ]]; then
|
||||
echo "🟢 $reg ($type)"
|
||||
elif [[ "$status" == *"屏蔽"* ]] || [[ "$status" == *"失败"* ]]; then
|
||||
echo "🔴 屏蔽"
|
||||
echo "🟢 ${reg} (${type})"
|
||||
elif [[ "$status" == *"仅"* ]] || [[ "$status" == *"机房"* ]] || [[ "$status" == *"待支持"* ]]; then
|
||||
# 捕捉 Netflix "仅自制"、ChatGPT "仅网页"、TikTok "机房" 等半残缺状态
|
||||
echo "🟡 ${status} ${reg}"
|
||||
elif [[ "$status" == *"屏蔽"* ]] || [[ "$status" == *"失败"* ]] || [[ "$status" == *"中国"* ]] || [[ "$status" == *"禁"* ]]; then
|
||||
# 捕捉高危风控状态
|
||||
echo "🔴 ${status}"
|
||||
else
|
||||
echo "⚪ $status"
|
||||
echo "⚪ ${status}"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -80,24 +174,35 @@ TK_STAT=$(parse_media "TikTok")
|
||||
GPT_STAT=$(parse_media "ChatGPT")
|
||||
APV_STAT=$(parse_media "AmazonPrimeVideo")
|
||||
|
||||
# 提取原生 JSON 里的原始状态用于底层隐写回传
|
||||
# 提取原生 JSON 原始状态用于底层隐写回传
|
||||
RAW_NF_STAT=$(echo "$JSON_DATA" | jq -r '.Media.Netflix.Status // "Unknown"' 2>/dev/null)
|
||||
RAW_YT_REG=$(echo "$JSON_DATA" | jq -r '.Media.Youtube.Region // ""' 2>/dev/null)
|
||||
RAW_YT_STAT=$(echo "$JSON_DATA" | jq -r '.Media.Youtube.Status // "Unknown"' 2>/dev/null)
|
||||
|
||||
# 5. 邮局连通性与黑名单
|
||||
# ----------------------------------------------------------
|
||||
# 邮局连通性与黑名单污染度
|
||||
# ----------------------------------------------------------
|
||||
PORT25=$(echo "$JSON_DATA" | jq -r '.Mail.Port25 // "false"' 2>/dev/null)
|
||||
[ "$PORT25" == "true" ] && P25_TEXT="✅ 畅通" || P25_TEXT="❌ 封堵"
|
||||
DNS_BLACK=$(echo "$JSON_DATA" | jq -r '.Mail.DNSBlacklist.Blacklisted // "0"' 2>/dev/null)
|
||||
DNS_MARK=$(echo "$JSON_DATA" | jq -r '.Mail.DNSBlacklist.Marked // "0"' 2>/dev/null)
|
||||
|
||||
# 6. “送中” 逻辑判定
|
||||
# [送中逻辑判定] 基于核心指标一票否决
|
||||
WARNING_MSG=""
|
||||
if [[ "$RAW_YT_REG" == *"[CN]"* ]] || [[ "$RAW_YT_STAT" == *"China"* ]]; then
|
||||
WARNING_MSG="%0A🚨 **[高危] 该节点已被 Google 判定为中国大陆 (送中)!**%0A"
|
||||
if [[ "$RAW_YT_REG" == "CN" ]] || [[ "$RAW_YT_STAT" == *"中国"* ]]; then
|
||||
# 采用 Bash 扩展转义,避免直接打印字面换行符
|
||||
WARNING_MSG=$'\n🚨 **[高危] 该节点已被 Google 判定为中国大陆 (送中)!**\n'
|
||||
fi
|
||||
|
||||
# 7. 组装情报级 Markdown 战报
|
||||
# ==========================================================
|
||||
# 5. 组装情报级 Markdown 战报与回调构造
|
||||
# ==========================================================
|
||||
LOCAL_VER="${AGENT_VERSION:-未知}"
|
||||
CURRENT_TIME=$(date -u "+%Y-%m-%d %H:%M:%S UTC")
|
||||
|
||||
# 强制使用中枢下发的真实 IP 拼接,以防探针星号掩码导致直达链接失效
|
||||
LINK_IP=$(echo "$PUBLIC_IP" | tr -d '[]')
|
||||
|
||||
REPORT="🎯 *IP-Sentinel 深海声呐报告*
|
||||
📍 节点:\`${NODE_ALIAS}\`
|
||||
🌐 地址:\`${IP_ADDR}\`${WARNING_MSG}
|
||||
@@ -111,7 +216,7 @@ REPORT="🎯 *IP-Sentinel 深海声呐报告*
|
||||
*🛡️ 欺诈雷达 (0为最优)*
|
||||
• **Scamalytics:** \`${SCAM_SCORE}/100\`
|
||||
• **AbuseIPDB:** \`${ABUSE_SCORE}/100\`
|
||||
• **IPQuality:** \`${IPQS_SCORE}/100\`
|
||||
• **IPQS:** \`${IPQS_SCORE}/100\`
|
||||
• **IP2Location:** \`${IP2L_SCORE}/100\`
|
||||
• **IPAPI 风险率:** \`${FRAUD_RISK}\`
|
||||
|
||||
@@ -127,13 +232,42 @@ REPORT="🎯 *IP-Sentinel 深海声呐报告*
|
||||
• **25 端口出站:** ${P25_TEXT}
|
||||
• **DNS 污染库:** 严重 \`${DNS_BLACK}\` | 轻微 \`${DNS_MARK}\`
|
||||
|
||||
_👉 [🔍 详细信用图谱直达 (Scamalytics)](https://scamalytics.com/ip/${TARGET_IP})_
|
||||
_👉 [🔍 详细信用图谱直达 (Scamalytics)](https://scamalytics.com/ip/${LINK_IP})_
|
||||
|
||||
\`[SYSTEM_REPORT]|QUALITY|${NODE_NAME}|${SCAM_SCORE}|${RAW_NF_STAT}\`"
|
||||
⏱️ \`${CURRENT_TIME}\` | ⚙️ \`v${LOCAL_VER}\`"
|
||||
|
||||
# 8. 直送指挥部
|
||||
curl -s -X POST "${TG_API_URL}" \
|
||||
-d "chat_id=${CHAT_ID}" \
|
||||
-d "parse_mode=Markdown" \
|
||||
-d "disable_web_page_preview=true" \
|
||||
-d "text=${REPORT}" >/dev/null
|
||||
# [核心数据萃取] 剥离非数字残留,确保传给 Master 趋势数据库的纯净性
|
||||
SAFE_SCAM_SCORE=$(echo "$SCAM_SCORE" | tr -cd '0-9')
|
||||
[ -z "$SAFE_SCAM_SCORE" ] && SAFE_SCAM_SCORE="0"
|
||||
|
||||
# 提取 Google(基于YouTube) 和 ChatGPT 的原生状态
|
||||
RAW_GOOG_STAT="${RAW_YT_REG:-$RAW_YT_STAT}"
|
||||
[ -z "$RAW_GOOG_STAT" ] && RAW_GOOG_STAT="未知"
|
||||
RAW_GPT_STAT=$(echo "$JSON_DATA" | jq -r '.Media.ChatGPT.Status // "未知"' 2>/dev/null)
|
||||
|
||||
# 废除可能导致中文字符截断乱码的强制限制,改用去隐形换行符的安全传递策略
|
||||
S_GOOG=$(echo "$RAW_GOOG_STAT" | tr -d '\n\r ')
|
||||
S_NF=$(echo "$RAW_NF_STAT" | tr -d '\n\r ')
|
||||
S_GPT=$(echo "$RAW_GPT_STAT" | tr -d '\n\r ')
|
||||
CB_DATA="svq|${NODE_NAME}|${SAFE_SCAM_SCORE}|${S_GOOG}|${S_NF}|${S_GPT}"
|
||||
|
||||
# 挂载内联键盘并直送指挥部
|
||||
JSON_PAYLOAD=$(jq -n \
|
||||
--arg cid "$CHAT_ID" \
|
||||
--arg txt "$REPORT" \
|
||||
--arg cb "$CB_DATA" \
|
||||
--arg cb_manage "manage:${NODE_NAME}" \
|
||||
'{
|
||||
chat_id: $cid,
|
||||
text: $txt,
|
||||
parse_mode: "Markdown",
|
||||
disable_web_page_preview: true,
|
||||
reply_markup: {
|
||||
inline_keyboard: [
|
||||
[{text: "📥 将本次体检录入趋势库", callback_data: $cb}],
|
||||
[{text: "⚙️ 调出该节点控制台", callback_data: $cb_manage}]
|
||||
]
|
||||
}
|
||||
}')
|
||||
|
||||
curl -s -X POST "${TG_API_URL}" -H "Content-Type: application/json" -d "$JSON_PAYLOAD" >/dev/null
|
||||
@@ -1,112 +1,132 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: mod_trust.sh (IP 信用净化模块 - 动态锚点版)
|
||||
# 脚本名称: mod_trust.sh
|
||||
# 核心功能: 动态扫描本地 LBS 冷数据,提取权威白名单,执行流量净化
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
UA_FILE="${INSTALL_DIR}/data/user_agents.txt"
|
||||
# 你的 GitHub 仓库 Raw 数据直链前缀
|
||||
REPO_RAW_URL="https://raw.githubusercontent.com/hotyue/IP-Sentinel/main"
|
||||
# 临时改为私库地址用于测试
|
||||
# REPO_RAW_URL="https://raw.githubusercontent.com/hotyue/IP-Sentinel/v3.6.2-rc"
|
||||
|
||||
# 1. 基础环境校验
|
||||
# --- [基础环境校验] ---
|
||||
[ ! -f "$CONFIG_FILE" ] && exit 1
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
REGION=${REGION_CODE:-"US"}
|
||||
LOG_FILE="${INSTALL_DIR}/logs/sentinel.log"
|
||||
|
||||
# 2. 动态获取配置 (V3 拓扑自适应与兜底)
|
||||
# 利用 find 穿透多级子目录,自动抓取安装时落地的那份专属 json 文件
|
||||
# ==========================================================
|
||||
# 1. 动态获取配置 (拓扑自适应与兜底机制)
|
||||
# ==========================================================
|
||||
# 利用 find 穿透多级子目录,自动抓取安装时落地的专属 json 文件
|
||||
REGION_JSON_FILE=$(find "${INSTALL_DIR}/data/regions" -name "*.json" 2>/dev/null | head -n 1)
|
||||
|
||||
# 兼容旧节点兜底:如果本地真没找到 json,回退到拉取云端通用大区配置
|
||||
# [容灾兜底] 如果本地 json 异常,回退拉取云端通用大区配置
|
||||
if [ -z "$REGION_JSON_FILE" ] || [ ! -f "$REGION_JSON_FILE" ]; then
|
||||
REGION_JSON_FILE="${INSTALL_DIR}/data/regions/${REGION}.json"
|
||||
mkdir -p "${INSTALL_DIR}/data/regions"
|
||||
curl -${IP_PREF:-4} -sL "${REPO_RAW_URL}/data/regions/${REGION}.json" -o "$REGION_JSON_FILE"
|
||||
fi
|
||||
|
||||
# 使用 jq 将 json 中的网址数组安全地读入 Bash 数组
|
||||
# 解析安全网址数组
|
||||
if [ -f "$REGION_JSON_FILE" ]; then
|
||||
mapfile -t TRUST_URLS < <(jq -r '.trust_module.white_urls[]' "$REGION_JSON_FILE" 2>/dev/null)
|
||||
if command -v jq >/dev/null 2>&1; then
|
||||
mapfile -t TRUST_URLS < <(jq -r '.trust_module.white_urls[]' "$REGION_JSON_FILE" 2>/dev/null)
|
||||
else
|
||||
log_msg "WARN " "系统未安装 jq,白名单解析降级为兜底模式。"
|
||||
TRUST_URLS=()
|
||||
fi
|
||||
fi
|
||||
|
||||
# 兜底:如果仓库挂了或者解析失败,提供国际通用白名单
|
||||
# [极限容灾] 提供国际通用无害白名单防全盘崩溃
|
||||
if [ ${#TRUST_URLS[@]} -eq 0 ]; then
|
||||
TRUST_URLS=("https://en.wikipedia.org/wiki/Special:Random" "https://www.apple.com/" "https://www.microsoft.com/")
|
||||
fi
|
||||
|
||||
# 3. 日志规范化 (v3.4.0 引入版本探针)
|
||||
# --- [日志规范化组件] ---
|
||||
log_msg() {
|
||||
local TYPE=$1
|
||||
local MSG=$2
|
||||
local TIME=$(date "+%Y-%m-%d %H:%M:%S")
|
||||
# [v3.4.0 核心] 提取当前配置中的版本锚点
|
||||
local TIME=$(date -u "+%Y-%m-%d %H:%M:%S UTC")
|
||||
local local_ver="${AGENT_VERSION:-未知}"
|
||||
|
||||
# 日志格式注入 [版本号] 追踪标识,保持对齐
|
||||
echo "[$TIME] [v%-5s] [%-5s] [Trust ] [$REGION] $MSG" | sed "s/%-5s/$local_ver/;s/%-5s/$TYPE/" | tee -a "$LOG_FILE"
|
||||
|
||||
printf "[%s] [v%-5s] [%-5s] [Trust ] [%s] %s\n" \
|
||||
"$TIME" "$local_ver" "$TYPE" "$REGION" "$MSG" | tee -a "$LOG_FILE"
|
||||
}
|
||||
|
||||
# 4. 锁定单次会话指纹
|
||||
# -----------------------------------------------------------
|
||||
# [V3.1.5] 哈希锚定法 (Hash-Seeded Persona)
|
||||
# 利用 IP 算力固定 3 个永久化专属指纹,破除僵尸网络同质化特征
|
||||
# -----------------------------------------------------------
|
||||
# ==========================================================
|
||||
# 2. 锁定单次会话指纹 (Hash-Seeded Persona)
|
||||
# ==========================================================
|
||||
if [ -f "$UA_FILE" ]; then
|
||||
mapfile -t UA_POOL < <(grep -v '^$' "$UA_FILE")
|
||||
TOTAL_UA=${#UA_POOL[@]}
|
||||
|
||||
if [ "$TOTAL_UA" -gt 0 ]; then
|
||||
# [v3.3.1修改] 优先使用固化的公网 IP 作为哈希种子,防止 NAT 节点指纹同质化
|
||||
# 优先使用固化的公网 IP 作为哈希种子,防范 NAT 节点指纹同质化特征
|
||||
SEED=$(echo -n "${PUBLIC_IP:-${BIND_IP:-127.0.0.1}}" | cksum | awk '{print $1}')
|
||||
|
||||
# 利用确定的种子,在全球 4000 的库中,计算出本机的 3 个绝对专属坐标
|
||||
# 构建当前节点的固定设备组映射
|
||||
IDX1=$(( SEED % TOTAL_UA ))
|
||||
IDX2=$(( (SEED * 17) % TOTAL_UA ))
|
||||
IDX3=$(( (SEED * 31) % TOTAL_UA ))
|
||||
|
||||
# 将专属坐标映射为专属设备库
|
||||
MY_UA_POOL=("${UA_POOL[$IDX1]}" "${UA_POOL[$IDX2]}" "${UA_POOL[$IDX3]}")
|
||||
|
||||
# 本次会话从这 3 台专属设备中随机挑选 1 台 (模拟真实的家庭多设备环境)
|
||||
# 模拟真实的家庭多设备环境进行会话隔离
|
||||
CURRENT_UA=${MY_UA_POOL[$RANDOM % 3]}
|
||||
else
|
||||
# 兜底容错
|
||||
CURRENT_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
|
||||
fi
|
||||
else
|
||||
CURRENT_UA="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
|
||||
fi
|
||||
|
||||
# ==========================================
|
||||
# 🚀 净化行动开始
|
||||
# ==========================================
|
||||
# ==========================================================
|
||||
# 3. 执行流量净化行动
|
||||
# ==========================================================
|
||||
log_msg "START" "========== 启动区域 IP 信用净化会话 =========="
|
||||
log_msg "INFO " "已载入 [${REGION}] 区域白名单,配置库条目: ${#TRUST_URLS[@]} 个"
|
||||
log_msg "INFO " "已锁定本地伪装指纹: $(echo $CURRENT_UA | cut -d' ' -f1-2)..."
|
||||
|
||||
# -----------------------------------------------------------
|
||||
# [V3.2.1 热修复] 网络锚定与协议自适应构建
|
||||
# 强制 curl 绑定网卡,并自动匹配 IPv4/v6 协议,杜绝 curl 冲突报错
|
||||
# [v4.1.6] Cookie 持久化身份库 (Trust 专属物理隔离)
|
||||
# 消除无记忆爬虫特征,积累顶级 CDN 的访客信誉分
|
||||
# -----------------------------------------------------------
|
||||
CURL_BIND_OPT=""
|
||||
DYNAMIC_IP_PREF="-${IP_PREF:-4}" # 默认提取用户配置
|
||||
COOKIE_DIR="${INSTALL_DIR}/data/cookies"
|
||||
mkdir -p "$COOKIE_DIR"
|
||||
|
||||
NODE_HASH=$(echo -n "${PUBLIC_IP:-127.0.0.1}" | cksum | awk '{print $1}')
|
||||
COOKIE_FILE="${COOKIE_DIR}/trust_${NODE_HASH}.txt"
|
||||
|
||||
# [互斥锁] 防止并发净化导致 Cookie 文件读写冲突
|
||||
LOCK_FILE="${COOKIE_FILE}.lock"
|
||||
exec 200>"$LOCK_FILE"
|
||||
flock -n 200 || {
|
||||
log_msg "WARN " "检测到已有 Trust 会话运行,跳过本轮。"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# 定期清理废弃 Cookie,防爆栈
|
||||
find "$COOKIE_DIR" -type f -name "trust_*.txt" -mtime +14 -delete 2>/dev/null || true
|
||||
|
||||
# ----------------------------------------------------------
|
||||
# 网络锚定与协议自适应构建
|
||||
# 强制 curl 绑定网卡并自动匹配底层网络协议栈
|
||||
# ----------------------------------------------------------
|
||||
# [v4.1.6 修复] 改用 Bash 数组传参,彻底消除 Shell Word Splitting 注入隐患
|
||||
CURL_BIND_ARGS=()
|
||||
DYNAMIC_IP_PREF="-${IP_PREF:-4}"
|
||||
|
||||
if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\.]+$ ]]; then
|
||||
# [v3.6.3 容错层补丁] 探测物理网卡/虚拟 IP 存活状态
|
||||
RAW_BIND_IP=$(echo "$BIND_IP" | tr -d '[]')
|
||||
if ! ip addr show 2>/dev/null | grep -qw "$RAW_BIND_IP"; then
|
||||
# [v4.1.6 修复] 使用 -Fq 替代 -qw,防止 IPv6 冒号被误认为单词边界导致误杀
|
||||
if ! ip addr show 2>/dev/null | grep -Fq "$RAW_BIND_IP"; then
|
||||
log_msg "WARN " "检测到配置的出口 IP ($RAW_BIND_IP) 已丢失,自动降级为系统默认路由出网!"
|
||||
CURL_BIND_OPT=""
|
||||
CURL_BIND_ARGS=()
|
||||
else
|
||||
CURL_BIND_OPT="--interface $BIND_IP"
|
||||
# 智能探测:带冒号为 V6,带点号为 V4
|
||||
CURL_BIND_ARGS=(--interface "$BIND_IP")
|
||||
if [[ "$BIND_IP" == *":"* ]]; then
|
||||
DYNAMIC_IP_PREF="-6"
|
||||
log_msg "INFO " "底层路由锁定: 绑定 IPv6 出口及协议 ($BIND_IP)"
|
||||
@@ -121,38 +141,61 @@ STEP_COUNT=$((RANDOM % 4 + 3))
|
||||
SUCCESS_INJECT=0
|
||||
|
||||
for ((i=1; i<=STEP_COUNT; i++)); do
|
||||
# 随机抽取本地区域权威网址
|
||||
TARGET_URL=${TRUST_URLS[$RANDOM % ${#TRUST_URLS[@]}]}
|
||||
TARGET_URL=${TRUST_URLS[$((RANDOM % ${#TRUST_URLS[@]}))]}
|
||||
|
||||
# [v3.0.1修复] 注入高权重流量时,强制从绑定的 IPv4 或 IPv6 隧道出网
|
||||
# [V3.2.1 热修复] 注入 $CURL_BIND_OPT 与 $DYNAMIC_IP_PREF 协议自适应
|
||||
HTTP_CODE=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -A "$CURRENT_UA" \
|
||||
# [v4.1.6] 统一数组化执行、挂载持久化 Cookie (-b -c) 并精准捕获底层死因
|
||||
HTTP_CODE=$(curl "${CURL_BIND_ARGS[@]}" "$DYNAMIC_IP_PREF" \
|
||||
-b "$COOKIE_FILE" -c "$COOKIE_FILE" -A "$CURRENT_UA" \
|
||||
-H "Accept: text/html,application/xhtml+xml;q=0.9,image/avif,image/webp,*/*;q=0.8" \
|
||||
-H "Accept-Language: en-US,en;q=0.9" \
|
||||
-H "Sec-Fetch-Dest: document" \
|
||||
-H "Sec-Fetch-Mode: navigate" \
|
||||
-H "Upgrade-Insecure-Requests: 1" \
|
||||
--compressed \
|
||||
-s -o /dev/null -w "%{http_code}" -m 15 "$TARGET_URL")
|
||||
-s -L -o /dev/null -w "%{http_code}" -m 15 "$TARGET_URL")
|
||||
CURL_EXIT=$?
|
||||
|
||||
# 扩大 HTTP 状态码容错区间:包含所有 20x (如亚马逊的 202) 和 30x 重定向
|
||||
if [[ "$HTTP_CODE" =~ ^(20[0-9]|30[1-8])$ ]]; then
|
||||
log_msg "EXEC " "动作[$i/$STEP_COUNT]完成 | 状态: $HTTP_CODE | 注入: $TARGET_URL"
|
||||
((SUCCESS_INJECT++))
|
||||
# [v4.1.6 修复] 精准错误码映射,防空值塌陷
|
||||
if [ $CURL_EXIT -ne 0 ]; then
|
||||
case $CURL_EXIT in
|
||||
6) HTTP_CODE="ERR_DNS" ;;
|
||||
7) HTTP_CODE="ERR_CONN" ;;
|
||||
28) HTTP_CODE="ERR_TIMEOUT" ;;
|
||||
35) HTTP_CODE="ERR_TLS" ;;
|
||||
56) HTTP_CODE="ERR_RESET" ;;
|
||||
*) HTTP_CODE="ERR_${CURL_EXIT}" ;;
|
||||
esac
|
||||
log_msg "WARN " "动作[$i/$STEP_COUNT]异常 | 底层错误: $HTTP_CODE | 阻拦: ${TARGET_URL:0:40}..."
|
||||
else
|
||||
log_msg "EXEC " "动作[$i/$STEP_COUNT]异常 | 状态: $HTTP_CODE | 阻拦: $TARGET_URL"
|
||||
# 扩大 HTTP 状态码容错区间:包含各大骨干 CDN 常见的 20x 及 30x 状态转移
|
||||
if [[ "$HTTP_CODE" =~ ^[23] ]]; then
|
||||
log_msg "EXEC " "动作[$i/$STEP_COUNT]完成 | 状态: $HTTP_CODE | 注入: ${TARGET_URL:0:40}..."
|
||||
((SUCCESS_INJECT++))
|
||||
else
|
||||
log_msg "WARN " "动作[$i/$STEP_COUNT]异常 | 状态: $HTTP_CODE | 阻拦: ${TARGET_URL:0:40}..."
|
||||
fi
|
||||
fi
|
||||
|
||||
# [v4.1.6] 泊松长尾生物钟拉伸,模拟人类真实阅读扫视习惯
|
||||
if [ $i -lt $STEP_COUNT ]; then
|
||||
SLEEP_TIME=$((RANDOM % 76 + 45))
|
||||
log_msg "WAIT " "正在浏览本地高权重页面,模拟停留 $SLEEP_TIME 秒..."
|
||||
sleep $SLEEP_TIME
|
||||
SLEEP_DICE=$((RANDOM % 100))
|
||||
if [ $SLEEP_DICE -lt 45 ]; then
|
||||
SLEEP_TIME=$((8 + RANDOM % 13)) # 8 - 20s (45%)
|
||||
elif [ $SLEEP_DICE -lt 80 ]; then
|
||||
SLEEP_TIME=$((20 + RANDOM % 41)) # 20 - 60s (35%)
|
||||
elif [ $SLEEP_DICE -lt 95 ]; then
|
||||
SLEEP_TIME=$((60 + RANDOM % 121)) # 60 - 180s (15%)
|
||||
else
|
||||
SLEEP_TIME=$((180 + RANDOM % 300)) # 180 - 480s (5%)
|
||||
fi
|
||||
log_msg "WAIT " "正在浏览本地高权重页面,模拟停留 ${SLEEP_TIME}s..."
|
||||
sleep "$SLEEP_TIME"
|
||||
fi
|
||||
done
|
||||
|
||||
# ==========================================
|
||||
# 📊 结论判定与输出
|
||||
# ==========================================
|
||||
# ==========================================================
|
||||
# 4. 结论判定与输出
|
||||
# ==========================================================
|
||||
if [ "$SUCCESS_INJECT" -ge $((STEP_COUNT / 2)) ]; then
|
||||
log_msg "SCORE" "自检结论: ✅ 信用净化完成 (已成功注入 $SUCCESS_INJECT 条无害流量)"
|
||||
else
|
||||
|
||||
@@ -1,56 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: runner.sh (IP-Sentinel 主控调度引擎 - 动态锚点版)
|
||||
# 核心功能: 防并发延迟启动、功能开关(Feature Flag)自适应、多模块概率轮盘调度
|
||||
# 脚本名称: runner.sh
|
||||
# 核心功能: 主控调度枢纽,管理防并发锁与 Feature Flag 概率轮盘
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
|
||||
# 1. 检查并加载本地冷数据配置
|
||||
# --- [基础环境构建] ---
|
||||
if [ ! -f "$CONFIG_FILE" ]; then
|
||||
echo "配置文件丢失,请重新运行 install.sh"
|
||||
exit 1
|
||||
fi
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
# ================== [新增: 文件排他锁,防止并发重入引发内存雪崩] ==================
|
||||
# ==========================================================
|
||||
# [防线 1] 进程排他锁管控
|
||||
# 严格防止高频并发重入引发的底层内存雪崩与死锁
|
||||
# ==========================================================
|
||||
exec 200>"/tmp/ip_sentinel_runner.lock"
|
||||
if ! flock -n 200; then
|
||||
echo "[$(date)] ⚠️ 上一轮巡逻任务尚未结束,本次触发自动取消。" >> "$LOG_FILE"
|
||||
exit 0
|
||||
fi
|
||||
# ==================================================================================
|
||||
|
||||
# 2. 全局日志写入函数 (导出给子进程共享使用,v3.4.0 引入版本探针)
|
||||
# --- [系统级日志通道] ---
|
||||
log() {
|
||||
local module=$1
|
||||
local level=$2
|
||||
local msg=$3
|
||||
# [v3.4.0 核心] 提取当前配置中的版本锚点
|
||||
local local_ver="${AGENT_VERSION:-未知}"
|
||||
|
||||
# 保证日志目录存在
|
||||
mkdir -p "${INSTALL_DIR}/logs"
|
||||
|
||||
# 日志格式注入 [版本号] 追踪标识
|
||||
local core_msg=$(printf "[v%-5s] [%-5s] [%-7s] [%s] %s" "$local_ver" "$level" "$module" "$REGION_CODE" "$msg")
|
||||
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $core_msg" >> "$LOG_FILE"
|
||||
echo "[$(date -u '+%Y-%m-%d %H:%M:%S UTC')] $core_msg" >> "$LOG_FILE"
|
||||
|
||||
# 强制推送到 Systemd Journal (如果系统支持)
|
||||
if command -v logger >/dev/null 2>&1; then
|
||||
logger -t ip-sentinel "$core_msg"
|
||||
else
|
||||
# 降级输出到 stdout,让 Systemd 捕获
|
||||
echo "$core_msg"
|
||||
fi
|
||||
}
|
||||
export -f log
|
||||
export CONFIG_FILE INSTALL_DIR
|
||||
|
||||
# 3. 防僵尸网络特征 (Cron Jitter) - 核心隐蔽逻辑
|
||||
# 配合每 30 分钟的调度周期,将随机休眠控制在 0 到 180 秒内,彻底打散全球并发请求
|
||||
# ==========================================================
|
||||
# [防线 2] 行为学隐蔽 (Cron Jitter)
|
||||
# 彻底消除僵尸网络同频定时唤醒特征,自然打散全球并发请求
|
||||
# ==========================================================
|
||||
if [ -t 1 ]; then
|
||||
log "SYSTEM" "INFO " "💻 检测到人工终端干预,跳过静默休眠,立即执行任务!"
|
||||
else
|
||||
@@ -59,15 +58,17 @@ else
|
||||
sleep $JITTER_TIME
|
||||
fi
|
||||
|
||||
# 4. 唤醒并读取功能开关,执行智能调度 (Feature Flag)
|
||||
# ==========================================================
|
||||
# 智能轮盘赌调度系统 (基于 Feature Flag)
|
||||
# ==========================================================
|
||||
log "SYSTEM" "INFO" "休眠结束,开始计算本轮任务轮盘..."
|
||||
|
||||
TARGET_MOD=""
|
||||
MOD_NAME=""
|
||||
|
||||
# 智能轮盘赌算法
|
||||
# 概率任务分配模型
|
||||
if [ "$ENABLE_GOOGLE" == "true" ] && [ "$ENABLE_TRUST" == "true" ]; then
|
||||
# 双管齐下: 70% 概率跑 Google 稳固定位,30% 概率跑 Trust 洗刷风控分
|
||||
# 优先锚定地理画像,辅助洗刷风控分
|
||||
ROLL=$((RANDOM % 100 + 1))
|
||||
if [ $ROLL -le 70 ]; then
|
||||
TARGET_MOD="mod_google.sh"
|
||||
@@ -87,11 +88,12 @@ else
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# 5. 拉起选定的业务模块
|
||||
# ----------------------------------------------------------
|
||||
# 安全执行与资源剥离
|
||||
# ----------------------------------------------------------
|
||||
if [ -n "$TARGET_MOD" ] && [ -x "${INSTALL_DIR}/core/${TARGET_MOD}" ]; then
|
||||
log "SYSTEM" "INFO" "命中触发条件,加载并执行子模块: ${MOD_NAME}"
|
||||
# 核心降耗逻辑:使用 nice -n 19 赋予进程最低 CPU 优先级,绝不抢占 VPS 正常业务的资源
|
||||
# [安全修复] 注入 200>&-,强行关闭子进程对排他锁的继承权!防止子进程假死导致全局死锁
|
||||
# [进程隔离与降耗] 赋予最低 CPU 优先级,并强制剥离排他锁的继承权,防止子进程假死拖垮全局
|
||||
nice -n 19 bash "${INSTALL_DIR}/core/${TARGET_MOD}" 200>&-
|
||||
else
|
||||
log "SYSTEM" "ERROR" "配置了模块 ${MOD_NAME},但未找到对应的可执行脚本: ${TARGET_MOD}"
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: tg_daemon.sh (Telegram 互动监听守护进程 - 动态锚点版)
|
||||
# 核心功能: 极低功耗长轮询监听、节点溯源、版本继承
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
OFFSET_FILE="/tmp/ip_sentinel_tg_offset.txt"
|
||||
|
||||
# 1. 环境自检
|
||||
[ ! -f "$CONFIG_FILE" ] && exit 1
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
# 如果没有配置 TG 机器人,则安静退出守护进程
|
||||
[ -z "$TG_TOKEN" ] || [ -z "$CHAT_ID" ] && exit 0
|
||||
|
||||
# [核心: 动态版本锚点与防撞甲身份载入]
|
||||
LOCAL_VER="${AGENT_VERSION:-未知}"
|
||||
IP_HASH=$(echo "${PUBLIC_IP:-127.0.0.1}" | md5sum | cut -c 1-4 | tr 'a-z' 'A-Z')
|
||||
NODE_NAME="$(hostname | cut -c 1-10)-${IP_HASH}"
|
||||
|
||||
# 2. 初始化消息偏移量 (Offset) 记录文件,防止重启后重复处理老消息
|
||||
OFFSET=0
|
||||
[ -f "$OFFSET_FILE" ] && OFFSET=$(cat "$OFFSET_FILE")
|
||||
|
||||
# 发送消息的快捷工具函数
|
||||
send_msg() {
|
||||
curl -s -X POST "https://api.telegram.org/bot${TG_TOKEN}/sendMessage" \
|
||||
-d "chat_id=$CHAT_ID" -d "text=$1" -d "parse_mode=Markdown" > /dev/null
|
||||
}
|
||||
|
||||
# 3. 核心守护循环 (无限长轮询监听)
|
||||
# timeout=30 表示如果没有新消息,连接会挂起 30 秒才断开重连,极大地降低了系统资源消耗
|
||||
while true; do
|
||||
UPDATES=$(curl -s "https://api.telegram.org/bot${TG_TOKEN}/getUpdates?offset=${OFFSET}&timeout=30")
|
||||
|
||||
# 使用 jq 检查是否有新消息返回
|
||||
COUNT=$(echo "$UPDATES" | jq -r '.result | length' 2>/dev/null)
|
||||
|
||||
if [[ "$COUNT" =~ ^[0-9]+$ ]] && [ "$COUNT" -gt 0 ]; then
|
||||
for (( i=0; i<$COUNT; i++ )); do
|
||||
UPDATE_ID=$(echo "$UPDATES" | jq -r ".result[$i].update_id")
|
||||
MSG_CHAT_ID=$(echo "$UPDATES" | jq -r ".result[$i].message.chat.id")
|
||||
MSG_TEXT=$(echo "$UPDATES" | jq -r ".result[$i].message.text")
|
||||
|
||||
# 【安全防御】严格权限验证:只响应你部署时填入的 Chat ID,无视陌生人消息
|
||||
if [ "$MSG_CHAT_ID" == "$CHAT_ID" ]; then
|
||||
case "$MSG_TEXT" in
|
||||
"/run")
|
||||
send_msg "🚀 **[${NODE_NAME}]** 正在后台触发 IP 养护任务 (v${LOCAL_VER})..."
|
||||
# 使用 nohup 另起后台独立进程运行,防止阻塞当前监听器的循环
|
||||
nohup bash "${INSTALL_DIR}/core/mod_google.sh" >/dev/null 2>&1 &
|
||||
;;
|
||||
"/log")
|
||||
LOG_DATA=$(tail -n 15 "${INSTALL_DIR}/logs/sentinel.log")
|
||||
send_msg "📄 **[${NODE_NAME}] 实时日志 (v${LOCAL_VER}):**%0A\`\`\`log%0A${LOG_DATA}%0A\`\`\`"
|
||||
;;
|
||||
"/report")
|
||||
# 触发生成一次战报
|
||||
bash "${INSTALL_DIR}/core/tg_report.sh"
|
||||
;;
|
||||
"/help"|"/start")
|
||||
HELP_MSG="🛡️ **IP-Sentinel 边缘控制台**%0A📍 节点: \`${NODE_NAME}\`%0A🔖 版本: \`v${LOCAL_VER}\`%0A%0A/run - 立刻执行一次养护%0A/log - 抓取最新运行日志%0A/report - 手动生成统计简报"
|
||||
send_msg "$HELP_MSG"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# 记录处理完毕的 message ID,下次请求从新的 ID 开始获取
|
||||
OFFSET=$((UPDATE_ID + 1))
|
||||
echo "$OFFSET" > "$OFFSET_FILE"
|
||||
done
|
||||
fi
|
||||
# 基础安全延时,防止极端网络情况下的死循环吃光 CPU
|
||||
sleep 2
|
||||
done
|
||||
@@ -1,15 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: tg_report.sh (Telegram 每日战报模块 - 动态锚点版)
|
||||
# 核心功能: 适配 Feature Flag 架构,按需展示独立统计数据,OTA 更新预警
|
||||
# 脚本名称: tg_report.sh
|
||||
# 核心功能: 收集并聚合终端特征、提取执行快照、侦测云端版本并生成简报
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
LOG_FILE="${INSTALL_DIR}/logs/sentinel.log"
|
||||
|
||||
# 1. 加载配置并自检
|
||||
# --- [基础自检] ---
|
||||
if [ ! -f "$CONFIG_FILE" ]; then exit 1; fi
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
@@ -18,20 +18,39 @@ if [ -z "$TG_TOKEN" ] || [ -z "$CHAT_ID" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# 2. 节点元数据抓取 (v3.2.2 协议自适应与多级容灾版)
|
||||
# [v3.5.2 核心: 引入双轨身份架构]
|
||||
# ==========================================================
|
||||
# [防线 1] 并发风暴熔断机制 (60s 冷却池)
|
||||
# ==========================================================
|
||||
LOCK_FILE="${INSTALL_DIR}/core/.report_lock"
|
||||
if [ -f "$LOCK_FILE" ]; then
|
||||
LAST_RUN=$(cat "$LOCK_FILE" 2>/dev/null)
|
||||
NOW=$(date +%s)
|
||||
# 严格校验最后执行时间的合法性,防御密集回调
|
||||
if [[ "$LAST_RUN" =~ ^[0-9]+$ ]]; then
|
||||
if [ $((NOW - LAST_RUN)) -lt 60 ]; then
|
||||
echo "[$(date -u '+%Y-%m-%d %H:%M:%S UTC')] [v${AGENT_VERSION:-未知}] [WARN ] [Report ] [SYSTEM] ⚠️ 战报请求过于频繁,触发 60 秒防并发风暴拦截。" >> "${INSTALL_DIR}/logs/sentinel.log"
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
echo $(date +%s) > "$LOCK_FILE"
|
||||
|
||||
# ==========================================================
|
||||
# 1. 节点元数据与双轨身份解析
|
||||
# ==========================================================
|
||||
if [ -z "$NODE_NAME" ]; then
|
||||
IP_HASH=$(echo "${PUBLIC_IP:-127.0.0.1}" | md5sum | cut -c 1-4 | tr 'a-z' 'A-Z')
|
||||
NODE_NAME="$(hostname | cut -c 1-10)-${IP_HASH}"
|
||||
fi
|
||||
NODE_ALIAS="${NODE_ALIAS:-$NODE_NAME}"
|
||||
|
||||
# --- [防线 1: 底层路由锁定与协议自适应] ---
|
||||
# ----------------------------------------------------------
|
||||
# [容灾探针 1] 底层路由锁定与多节点出口 IP 嗅探
|
||||
# ----------------------------------------------------------
|
||||
CURL_BIND_OPT=""
|
||||
DYNAMIC_IP_PREF="-${IP_PREF:-4}"
|
||||
|
||||
if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\.]+$ ]]; then
|
||||
# [v3.6.3 容错层补丁] 探测物理网卡/虚拟 IP 存活状态
|
||||
RAW_BIND_IP=$(echo "$BIND_IP" | tr -d '[]')
|
||||
if ! ip addr show 2>/dev/null | grep -qw "$RAW_BIND_IP"; then
|
||||
CURL_BIND_OPT=""
|
||||
@@ -45,37 +64,36 @@ if [[ -n "$BIND_IP" && "$BIND_IP" =~ ^[0-9a-fA-F:\.]+$ ]]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# 多节点容灾探测出口 IP (注入协议自适应)
|
||||
# 结合协议自适应进行外部 IP 回显探测
|
||||
CURRENT_IP=$( (curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -s -m 5 api.ip.sb/ip || curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -s -m 5 ifconfig.me) 2>/dev/null | tr -d '[:space:]' )
|
||||
# [v3.3.1 修改] 强制兜底:如果外部 API 挂了,优先使用固化的对外公网面孔 (兼容 NAT 机的空 BIND_IP)
|
||||
# 强制兜底逻辑:网络完全阻断时回退使用配置文件锚点
|
||||
[ -z "$CURRENT_IP" ] && CURRENT_IP="${PUBLIC_IP:-$BIND_IP}"
|
||||
|
||||
# 为可能获取到的 IPv6 自动添加方括号护甲
|
||||
# 为 IPv6 环境追加方括号安全护甲
|
||||
[[ "$CURRENT_IP" == *":"* ]] && [[ "$CURRENT_IP" != *"["* ]] && CURRENT_IP="[${CURRENT_IP}]"
|
||||
|
||||
# --- [防线 2: 多级 ISP 容灾探针链路] ---
|
||||
# ----------------------------------------------------------
|
||||
# [容灾探针 2] 多级 ISP 情报探测链路
|
||||
# ----------------------------------------------------------
|
||||
ISP_INFO=""
|
||||
|
||||
# 探针 A: 纯文本 API (免 jq,极速稳定)
|
||||
# 优先级 A: 高吞吐极速纯文本接口
|
||||
ISP_INFO=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -s -m 5 ipinfo.io/org 2>/dev/null)
|
||||
|
||||
# 探针 B: 备用纯文本 API
|
||||
# 优先级 B: 备用纯文本接口
|
||||
if [ -z "$ISP_INFO" ] || [[ "$ISP_INFO" == *"error"* ]]; then
|
||||
ISP_INFO=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -s -m 5 ip-api.com/line/?fields=isp 2>/dev/null)
|
||||
fi
|
||||
|
||||
# 探针 C: 原版的 JSON API (需要 jq 兜底)
|
||||
# 优先级 C: 需构建环境依赖的 JSON 接口
|
||||
if [ -z "$ISP_INFO" ] || [[ "$ISP_INFO" == *"error"* ]]; then
|
||||
if command -v jq &> /dev/null; then
|
||||
ISP_INFO=$(curl $CURL_BIND_OPT $DYNAMIC_IP_PREF -s -m 5 api.ip.sb/geoip | jq -r '.organization' 2>/dev/null)
|
||||
fi
|
||||
fi
|
||||
|
||||
# --- [防线 3: 数据清洗 (遵循底层共识原则)] ---
|
||||
# 剔除 ipinfo 返回的开头 AS 号 (例如 "AS137535 JT TELECOM" -> "JT TELECOM")
|
||||
# 数据清洗过滤与类型渲染
|
||||
ISP_INFO=$(echo "$ISP_INFO" | sed -E 's/^AS[0-9]+ //')
|
||||
|
||||
# 最终兜底判断
|
||||
[ -z "$ISP_INFO" ] || [ "$ISP_INFO" == "null" ] && ISP_INFO="未知 ISP"
|
||||
|
||||
if [[ "$ISP_INFO" == *"Cloudflare"* ]]; then
|
||||
@@ -84,19 +102,27 @@ else
|
||||
IP_TYPE="$ISP_INFO 🏠"
|
||||
fi
|
||||
|
||||
# 动态国旗
|
||||
case "$REGION_CODE" in
|
||||
"JP") FLAG="🇯🇵" ;;
|
||||
"US") FLAG="🇺🇸" ;;
|
||||
"DE") FLAG="🇩🇪" ;;
|
||||
"SG") FLAG="🇸🇬" ;;
|
||||
"HK") FLAG="🇭🇰" ;;
|
||||
"GB"|"UK") FLAG="🇬🇧" ;;
|
||||
"AU") FLAG="🇦🇺" ;;
|
||||
# [全视界旗帜引擎] 动态国旗渲染装配
|
||||
BASE_CC="${REGION_CODE%%-*}"
|
||||
case "$BASE_CC" in
|
||||
US) FLAG="🇺🇸" ;; JP) FLAG="🇯🇵" ;; HK) FLAG="🇭🇰" ;; TW) FLAG="🇹🇼" ;; SG) FLAG="🇸🇬" ;;
|
||||
UK|GB) FLAG="🇬🇧" ;; DE) FLAG="🇩🇪" ;; FR) FLAG="🇫🇷" ;; NL) FLAG="🇳🇱" ;; CA) FLAG="🇨🇦" ;;
|
||||
AU) FLAG="🇦🇺" ;; KR) FLAG="🇰🇷" ;; IN) FLAG="🇮🇳" ;; BR) FLAG="🇧🇷" ;; RU) FLAG="🇷🇺" ;;
|
||||
CH) FLAG="🇨🇭" ;; SE) FLAG="🇸🇪" ;; NO) FLAG="🇳🇴" ;; DK) FLAG="🇩🇰" ;; FI) FLAG="🇫🇮" ;;
|
||||
IT) FLAG="🇮🇹" ;; ES) FLAG="🇪🇸" ;; PT) FLAG="🇵🇹" ;; IE) FLAG="🇮🇪" ;; PL) FLAG="🇵🇱" ;;
|
||||
AT) FLAG="🇦🇹" ;; BE) FLAG="🇧🇪" ;; TR) FLAG="🇹🇷" ;; ZA) FLAG="🇿🇦" ;; AE) FLAG="🇦🇪" ;;
|
||||
MY) FLAG="🇲🇾" ;; ID) FLAG="🇮🇩" ;; VN) FLAG="🇻🇳" ;; TH) FLAG="🇹🇭" ;; PH) FLAG="🇵🇭" ;;
|
||||
NZ) FLAG="🇳🇿" ;; AR) FLAG="🇦🇷" ;; CL) FLAG="🇨🇱" ;; MX) FLAG="🇲🇽" ;; IL) FLAG="🇮🇱" ;;
|
||||
SA) FLAG="🇸🇦" ;; EG) FLAG="🇪🇬" ;; NG) FLAG="🇳🇬" ;; KE) FLAG="🇰🇪" ;; RO) FLAG="🇷🇴" ;;
|
||||
BG) FLAG="🇧🇬" ;; CZ) FLAG="🇨🇿" ;; HU) FLAG="🇭🇺" ;; GR) FLAG="🇬🇷" ;; UA) FLAG="🇺🇦" ;;
|
||||
MO) FLAG="🇲🇴" ;; KH) FLAG="🇰🇭" ;; MM) FLAG="🇲🇲" ;; LA) FLAG="🇱🇦" ;;
|
||||
MN) FLAG="🇲🇳" ;; NP) FLAG="🇳🇵" ;; BD) FLAG="🇧🇩" ;;
|
||||
*) FLAG="🌐" ;;
|
||||
esac
|
||||
|
||||
# 3. 截取过去 24 小时的日志 (每天48次轮询,保留最新 1000 行足以覆盖单日战报)
|
||||
# ==========================================================
|
||||
# 2. 行为日志萃取与快照分析
|
||||
# ==========================================================
|
||||
LOG_CONTENT=$(tail -n 1000 "$LOG_FILE" 2>/dev/null)
|
||||
|
||||
if [ -z "$LOG_CONTENT" ]; then
|
||||
@@ -108,24 +134,19 @@ if [ -z "$LOG_CONTENT" ]; then
|
||||
🛠️ **建议**: 节点可能刚部署完毕,请在面板手动执行一次养护动作。
|
||||
EOT
|
||||
else
|
||||
# ==========================================
|
||||
# 4. 动态模块数据分析 (核心升级)
|
||||
# ==========================================
|
||||
|
||||
# 提取最近一次运行的快照 (智能识别所属模块)
|
||||
# 抓取末次执行模块的运行态势图
|
||||
LAST_LOG_LINE=$(echo "$LOG_CONTENT" | grep "\[SCORE\]" | tail -n 1)
|
||||
LAST_TIME=$(echo "$LAST_LOG_LINE" | awk '{print $1,$2}' | tr -d '[]')
|
||||
LAST_MOD=$(echo "$LAST_LOG_LINE" | awk '{print $4}' | tr -d '[]')
|
||||
LAST_SCORE=$(echo "$LAST_LOG_LINE" | awk -F'自检结论: ' '{print $2}')
|
||||
|
||||
# 开始组装战报头部
|
||||
MSG="📊 **IP-Sentinel 每日简报 (${FLAG} ${REGION_NAME})**
|
||||
----------------------------
|
||||
📍 **节点名称**: \`${NODE_ALIAS}\`
|
||||
📡 **出口 IP**: \`${CURRENT_IP}\`
|
||||
🛡️ **IP 属性**: ${IP_TYPE}"
|
||||
|
||||
# --- [分析块 1: Google 纠偏模块] ---
|
||||
# 统计 Google 纠偏阵列数据
|
||||
if [ "$ENABLE_GOOGLE" == "true" ]; then
|
||||
GOOGLE_LOGS=$(echo "$LOG_CONTENT" | grep "\[Google")
|
||||
G_TOTAL=$(echo "$GOOGLE_LOGS" | grep "\[START\]" -c)
|
||||
@@ -143,7 +164,7 @@ else
|
||||
✅ 成功: ${G_SUCCESS} | ❌ 送中: ${G_FAILED} | ⚠️ 警告: ${G_WARN}"
|
||||
fi
|
||||
|
||||
# --- [分析块 2: IP 信用净化模块] ---
|
||||
# 统计 Trust 净化阵列数据
|
||||
if [ "$ENABLE_TRUST" == "true" ]; then
|
||||
TRUST_LOGS=$(echo "$LOG_CONTENT" | grep "\[Trust")
|
||||
T_TOTAL=$(echo "$TRUST_LOGS" | grep "\[START\]" -c)
|
||||
@@ -160,51 +181,68 @@ else
|
||||
✅ 成功注入: ${T_SUCCESS} | ❌ 访问受阻: ${T_FAILED}"
|
||||
fi
|
||||
|
||||
# 组装战报尾部 (最近快照)
|
||||
# 追加末次快照
|
||||
MSG="$MSG
|
||||
|
||||
🕒 **最近执行快照 [${LAST_MOD:-"System"}]:**
|
||||
时间: ${LAST_TIME:-"暂无数据"}
|
||||
🕒 **最近执行快照: \`${LAST_MOD:-"System"} \`**
|
||||
时间: ${LAST_TIME:-"暂无数据"} (节点本地)
|
||||
结论: ${LAST_SCORE:-"暂无数据"}"
|
||||
|
||||
fi
|
||||
|
||||
# ==========================================
|
||||
# 5. [核心: OTA 云端版本探针与告警模块]
|
||||
# ==========================================
|
||||
# 从配置文件提取当前本地版本,若无则默认为未知
|
||||
# ==========================================================
|
||||
# 3. 云端版本探针与 OTA 调度模块
|
||||
# ==========================================================
|
||||
LOCAL_VER="${AGENT_VERSION:-未知}"
|
||||
# [时间线对齐] 强制采用绝对 UTC 时间消除多节点的系统偏差
|
||||
REPORT_UTC_TIME=$(date -u "+%Y-%m-%d %H:%M:%S UTC")
|
||||
|
||||
# 极轻量级探针: 抓取 GitHub 云端的 version.txt (超时 3 秒,KV解析法)
|
||||
REPO_RAW_URL="https://raw.githubusercontent.com/hotyue/IP-Sentinel/main"
|
||||
REMOTE_VER=$(curl -s -m 3 "${REPO_RAW_URL}/version.txt" | grep "^AGENT_VERSION=" | cut -d'=' -f2 | tr -d '[:space:]')
|
||||
|
||||
# 构建底部引擎状态块
|
||||
MSG="$MSG
|
||||
----------------------------
|
||||
🛡️ **系统引擎状态**
|
||||
当前运行版本: \`v${LOCAL_VER}\`"
|
||||
⏱️ 战报生成: \`${REPORT_UTC_TIME}\`"
|
||||
|
||||
# 比对逻辑:如果成功抓到了远端版本,且和本地不一样
|
||||
if [ -n "$REMOTE_VER" ] && [ "$REMOTE_VER" != "$LOCAL_VER" ]; then
|
||||
MSG="$MSG
|
||||
最新官方版本: \`v${REMOTE_VER}\` (✨有新版)
|
||||
💡 *司令部提示:检测到新版装甲,请长官登录节点执行平滑热更新!*"
|
||||
elif [ -n "$REMOTE_VER" ] && [ "$REMOTE_VER" == "$LOCAL_VER" ]; then
|
||||
MSG="$MSG
|
||||
最新官方版本: \`v${REMOTE_VER}\` (✅已是最新)
|
||||
💡 *哨兵正在后台默默守护您的资产。*"
|
||||
# 根据云端版本一致性自动渲染更新提示面板
|
||||
if [ -n "$REMOTE_VER" ]; then
|
||||
if [ "$REMOTE_VER" != "$LOCAL_VER" ]; then
|
||||
MSG="$MSG
|
||||
当前运行版本: \`v${LOCAL_VER}\`
|
||||
✨ **发现新版本**: \`v${REMOTE_VER}\` (建议更新)
|
||||
💡 *系统提示:检测到新版引擎,建议通过中枢控制台执行 OTA 热更新!*"
|
||||
else
|
||||
MSG="$MSG
|
||||
当前运行版本: \`v${LOCAL_VER}\` (✅已是最新)
|
||||
💡 *IP-Sentinel 持续为您守护节点。*
|
||||
*若本项目对您有帮助,欢迎前往 GitHub 赐予 🌟*"
|
||||
fi
|
||||
else
|
||||
# 抓取失败兜底
|
||||
MSG="$MSG
|
||||
💡 *哨兵正在后台默默守护您的资产。*"
|
||||
当前运行版本: \`v${LOCAL_VER}\`
|
||||
💡 *IP-Sentinel 持续为您守护节点。*
|
||||
*若本项目对您有帮助,欢迎前往 GitHub 赐予 🌟*"
|
||||
fi
|
||||
|
||||
# 5. 调用 API 推送 (接入安全网关)
|
||||
# --- [下发 API 载荷] ---
|
||||
JSON_PAYLOAD=$(jq -n \
|
||||
--arg cid "$CHAT_ID" \
|
||||
--arg txt "$MSG" \
|
||||
--arg cb "manage:${NODE_NAME}" \
|
||||
'{
|
||||
chat_id: $cid,
|
||||
text: $txt,
|
||||
parse_mode: "Markdown",
|
||||
disable_web_page_preview: true,
|
||||
reply_markup: {
|
||||
inline_keyboard: [[{"text": "⚙️ 调出该节点控制台", "callback_data": $cb}]]
|
||||
}
|
||||
}')
|
||||
|
||||
RESPONSE=$(curl -s -m 10 -X POST "${TG_API_URL}" \
|
||||
-d "chat_id=${CHAT_ID}" \
|
||||
-d "text=${MSG}" \
|
||||
-d "parse_mode=Markdown")
|
||||
-H "Content-Type: application/json" \
|
||||
-d "$JSON_PAYLOAD")
|
||||
|
||||
if [[ "$RESPONSE" != *"\"ok\":true"* ]]; then
|
||||
echo "❌ 战报发送失败!API 响应: $RESPONSE" >> "${INSTALL_DIR}/logs/error.log"
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 脚本名称: uninstall.sh (IP-Sentinel 一键卸载脚本 - 动态锚点版)
|
||||
# 核心功能: 无痕清理守护进程、定时任务、运行目录及临时缓存
|
||||
# ==========================================================
|
||||
# 脚本名称: uninstall.sh
|
||||
# 核心功能: 无痕追踪溯源、全面抹杀幽灵进程、清空宿主脏数据残留与防火墙回缩
|
||||
# ==========================================================
|
||||
|
||||
# ==========================================================
|
||||
# 🛑 核心权限防线: 检查是否以 root 权限运行
|
||||
# ==========================================================
|
||||
# ----------------------------------------------------------
|
||||
# [权限鉴权] 防止非管理员误触导致组件残留挂起
|
||||
# ----------------------------------------------------------
|
||||
if [ "$EUID" -ne 0 ]; then
|
||||
echo -e "\033[31m❌ 权限被拒绝: 卸载 IP-Sentinel 需要最高系统权限。\033[0m"
|
||||
echo -e "💡 请切换到 root 用户 (执行 su root 或 sudo -i) 后重新运行指令。"
|
||||
@@ -14,22 +15,25 @@ if [ "$EUID" -ne 0 ]; then
|
||||
fi
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
|
||||
echo "========================================================"
|
||||
echo " 🗑️ 准备卸载 IP-Sentinel (边缘节点 Edge Agent)"
|
||||
|
||||
# [核心: 动态读取并播报即将销毁的本地版本号]
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
if [ -f "$CONFIG_FILE" ]; then
|
||||
CURRENT_VER=$(grep "^AGENT_VERSION=" "$CONFIG_FILE" | cut -d'"' -f2)
|
||||
[ -n "$CURRENT_VER" ] && echo " 📍 目标版本: v${CURRENT_VER}"
|
||||
fi
|
||||
echo "========================================================"
|
||||
|
||||
# 1. 停止并删除 Systemd 服务 (适配新架构)
|
||||
echo "[1/4] 正在停止并删除 Systemd 服务..."
|
||||
# ----------------------------------------------------------
|
||||
# [进程抹杀] 阻塞并卸除底层 Systemd 强绑定服务单元
|
||||
# ----------------------------------------------------------
|
||||
echo "[1/5] 正在停止并删除 Systemd 服务..."
|
||||
if command -v systemctl >/dev/null 2>&1; then
|
||||
echo "💡 检测到 Systemd 环境,正在抹除 Systemd 服务单元..."
|
||||
# 强制压制守护状态,发送 SIGKILL 剥夺其产生遗言及重启的机会
|
||||
systemctl kill --signal=SIGKILL ip-sentinel-agent-daemon.service >/dev/null 2>&1 || true
|
||||
systemctl disable --now ip-sentinel-runner.service ip-sentinel-runner.timer \
|
||||
ip-sentinel-updater.service ip-sentinel-updater.timer \
|
||||
ip-sentinel-report.service ip-sentinel-report.timer \
|
||||
@@ -47,8 +51,10 @@ else
|
||||
echo "💡 未检测到 Systemd,跳过此步骤..."
|
||||
fi
|
||||
|
||||
# 2. 停止运行中的守护进程与主控模块 (兜底清理老版进程)
|
||||
echo "[2/4] 正在终止后台守护进程与所有养护任务..."
|
||||
# ----------------------------------------------------------
|
||||
# [内存清洗] 全面追踪并镇压游离状态的挂起业务逻辑
|
||||
# ----------------------------------------------------------
|
||||
echo "[2/5] 正在终止后台守护进程与所有养护任务..."
|
||||
pkill -9 -f "tg_daemon.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "agent_daemon.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "python3.*webhook.py" >/dev/null 2>&1
|
||||
@@ -58,27 +64,83 @@ pkill -9 -f "updater.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "tg_report.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "mod_google.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "mod_trust.sh" >/dev/null 2>&1
|
||||
pkill -9 -f "sentinel_scheduler.sh" >/dev/null 2>&1
|
||||
|
||||
# 3. 清除系统定时任务 (Cron)
|
||||
echo "[3/4] 正在清理系统定时任务 (Cron)..."
|
||||
if crontab -l >/dev/null 2>&1; then
|
||||
crontab -l | grep -v "ip_sentinel" > /tmp/cron_backup
|
||||
crontab /tmp/cron_backup
|
||||
rm -f /tmp/cron_backup
|
||||
# ----------------------------------------------------------
|
||||
# [任务清洗] 基于内存管道流彻底擦除系统底层调度劫持
|
||||
# ----------------------------------------------------------
|
||||
echo "[3/5] 正在清理系统定时任务 (Cron)..."
|
||||
# 通过管道原位清洗避免落地到 /tmp,免疫提权或外部劫持探测
|
||||
crontab -l 2>/dev/null | grep -v "ip_sentinel" | crontab - >/dev/null 2>&1 || true
|
||||
|
||||
# 扫除高受限环境 (如 Alpine) 中的额外触发隐患
|
||||
for CRON_FILE in "/var/spool/cron/crontabs/root" "/etc/crontabs/root"; do
|
||||
if [ -f "$CRON_FILE" ]; then
|
||||
grep -v "ip_sentinel" "$CRON_FILE" > "${CRON_FILE}.tmp" 2>/dev/null || true
|
||||
cat "${CRON_FILE}.tmp" > "$CRON_FILE" 2>/dev/null || true
|
||||
rm -f "${CRON_FILE}.tmp" 2>/dev/null
|
||||
fi
|
||||
done
|
||||
rm -f /etc/local.d/ip_sentinel.start 2>/dev/null
|
||||
rm -f /etc/local.d/ip_sentinel_scheduler.start 2>/dev/null
|
||||
|
||||
if grep -q "sentinel_scheduler.sh" /etc/profile 2>/dev/null; then
|
||||
sed -i '/sentinel_scheduler\.sh/d' /etc/profile 2>/dev/null || true
|
||||
fi
|
||||
|
||||
# 4. 删除所有文件、日志与临时缓存
|
||||
echo "[4/4] 正在抹除核心程序、配置文件与系统痕迹..."
|
||||
# ----------------------------------------------------------
|
||||
# [防线回缩] 读取遗留端口,撤除自动化防火墙挂载点
|
||||
# ----------------------------------------------------------
|
||||
echo "[4/5] 正在执行本地防火墙撤防操作..."
|
||||
if [ -f "$CONFIG_FILE" ]; then
|
||||
AGENT_PORT=$(grep "^AGENT_PORT=" "$CONFIG_FILE" | cut -d'"' -f2)
|
||||
if [ -n "$AGENT_PORT" ]; then
|
||||
if command -v ufw >/dev/null 2>&1 && ufw status | grep -qw active; then
|
||||
ufw delete allow "$AGENT_PORT"/tcp >/dev/null 2>&1
|
||||
echo -e " ✅ \033[32mUFW 防火墙双栈撤防成功 (剔除端口: $AGENT_PORT)。\033[0m"
|
||||
elif command -v firewall-cmd >/dev/null 2>&1 && systemctl is-active firewalld | grep -qw active; then
|
||||
firewall-cmd --zone=public --remove-port="$AGENT_PORT"/tcp --permanent >/dev/null 2>&1
|
||||
firewall-cmd --reload >/dev/null 2>&1
|
||||
echo -e " ✅ \033[32mFirewalld 持久化拦截规则回缩完毕。\033[0m"
|
||||
else
|
||||
local fw_removed=false
|
||||
if command -v iptables >/dev/null 2>&1; then
|
||||
# 循环清洗,防备由于中途故障引发的复数规则残留
|
||||
while iptables -C INPUT -p tcp --dport "$AGENT_PORT" -j ACCEPT >/dev/null 2>&1; do
|
||||
iptables -D INPUT -p tcp --dport "$AGENT_PORT" -j ACCEPT
|
||||
fw_removed=true
|
||||
done
|
||||
fi
|
||||
if command -v ip6tables >/dev/null 2>&1; then
|
||||
while ip6tables -C INPUT -p tcp --dport "$AGENT_PORT" -j ACCEPT >/dev/null 2>&1; do
|
||||
ip6tables -D INPUT -p tcp --dport "$AGENT_PORT" -j ACCEPT
|
||||
fw_removed=true
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$fw_removed" = true ]; then
|
||||
echo -e " ✅ \033[32m原生 iptables/ip6tables 双轨锚点清理完毕。\033[0m"
|
||||
else
|
||||
echo -e " 💡 \033[33m未检测到残留底层拦截规则,防线保持默认流转。\033[0m"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo " 💡 未在主核配置内探测到通讯端口配置,跳过清理..."
|
||||
fi
|
||||
else
|
||||
echo " 💡 核心配置文件丢失,未能追溯部署端口状态,放弃网络防御清洗。"
|
||||
fi
|
||||
|
||||
# ----------------------------------------------------------
|
||||
# [物理销毁] 抹杀持久化特征,销毁系统沙盒痕迹
|
||||
# ----------------------------------------------------------
|
||||
echo "[5/5] 正在抹除核心程序、配置文件与系统痕迹..."
|
||||
if [ -d "$INSTALL_DIR" ]; then
|
||||
rm -rf "$INSTALL_DIR"
|
||||
fi
|
||||
|
||||
# 拔除 /tmp 目录下的所有更新下载临时文件和 V1/V2 遗留的偏移量记录
|
||||
rm -f /tmp/ip_sentinel_*.txt
|
||||
rm -f /tmp/ip_sentinel_*.json
|
||||
|
||||
echo "========================================================"
|
||||
echo "✅ 卸载彻底完成!IP-Sentinel 已从您的系统中无痕移除。"
|
||||
echo "💡 提示:如果安装时在防火墙放行了 Webhook 随机端口,请您按需手动关闭。"
|
||||
echo "✅ 卸载彻底完成!IP-Sentinel 引擎及对空信道已从您的系统中无痕移除。"
|
||||
echo "💡 提示:如果此前云端控制面板 (如 AWS/阿里云等) 配有入站安全组例外,请手动阻断以确保靶机零敞露。"
|
||||
echo "👋 感谢您的使用,期待未来再次为您守护资产!"
|
||||
echo "========================================================"
|
||||
echo "========================================================"
|
||||
|
||||
@@ -1,42 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# ==========================================================
|
||||
# 脚本名称: updater.sh (IP-Sentinel 养料注入与分频调度中枢 - 动态锚点版)
|
||||
# 核心功能: 静默更新热数据/LBS、指纹库错峰调度、强制出站死锁、版本无缝继承
|
||||
# 脚本名称: updater.sh
|
||||
# 核心功能: 指纹防惊群错峰轮换、LBS 底层静默分发、深度探针签名防伪
|
||||
# ==========================================================
|
||||
|
||||
INSTALL_DIR="/opt/ip_sentinel"
|
||||
CONFIG_FILE="${INSTALL_DIR}/config.conf"
|
||||
UA_TIME_FILE="${INSTALL_DIR}/core/.ua_last_update"
|
||||
|
||||
# GitHub 仓库 Raw 数据直链前缀
|
||||
REPO_RAW_URL="https://raw.githubusercontent.com/hotyue/IP-Sentinel/main"
|
||||
# 临时改为开发地址用于测试
|
||||
# REPO_RAW_URL="https://raw.githubusercontent.com/hotyue/IP-Sentinel/v3.6.2-rc"
|
||||
|
||||
# 1. 加载本地冷数据配置
|
||||
# --- [底层数据链装载] ---
|
||||
if [ ! -f "$CONFIG_FILE" ]; then
|
||||
exit 1
|
||||
fi
|
||||
source "$CONFIG_FILE"
|
||||
|
||||
# 2. 全局日志写入函数 (v3.4.0 引入版本探针)
|
||||
# --- [全局态势日志系统] ---
|
||||
log() {
|
||||
# [v3.4.0 核心] 提取当前配置中的版本锚点
|
||||
local local_ver="${AGENT_VERSION:-未知}"
|
||||
|
||||
# 保证日志目录存在
|
||||
mkdir -p "${INSTALL_DIR}/logs"
|
||||
|
||||
# 日志格式注入 [版本号] 追踪标识
|
||||
local core_msg=$(printf "[v%-5s] [%-5s] [%-7s] [%s] %s" "$local_ver" "$2" "$1" "$REGION_CODE" "$3")
|
||||
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $core_msg" >> "$LOG_FILE"
|
||||
# 强制剔除节点宿主机本地时差,严格对齐指挥部 UTC 基准
|
||||
echo "[$(date -u '+%Y-%m-%d %H:%M:%S UTC')] $core_msg" >> "$LOG_FILE"
|
||||
|
||||
# 强制推送到 Systemd Journal (如果系统支持)
|
||||
if command -v logger >/dev/null 2>&1; then
|
||||
logger -t ip-sentinel "$core_msg"
|
||||
else
|
||||
# 降级输出到 stdout,让 Systemd 捕获
|
||||
echo "$core_msg"
|
||||
fi
|
||||
}
|
||||
@@ -44,16 +37,12 @@ log() {
|
||||
log "Updater" "INFO " "========== 触发后台静默 OTA 热数据更新 =========="
|
||||
|
||||
# ==========================================================
|
||||
# 🛡️ 终极护城河:构建强锚定出站的 curl 请求引擎
|
||||
# [网络路由锁定] 构建强锚定出站屏障,彻底阻断跨协议溢出逃逸
|
||||
# ==========================================================
|
||||
# 基础参数:跟随 install.sh 锁定的协议偏好 (4 或 6)
|
||||
CURL_CMD="curl -${IP_PREF:-4} -sL"
|
||||
|
||||
# 【防坑核心】如果用户配置了死锁锚点,必须强制绑定网卡,杜绝流量溢出!
|
||||
if [ -n "$BIND_IP" ]; then
|
||||
# curl 的 --interface 参数不支持带方括号的 IPv6 地址,必须强行脱壳
|
||||
RAW_BIND_IP=$(echo "$BIND_IP" | tr -d '[]')
|
||||
# [v3.6.3 容错层补丁] 探测网卡存活状态,防止 IP 漂移导致永久断网
|
||||
if ! ip addr show 2>/dev/null | grep -qw "$RAW_BIND_IP"; then
|
||||
log "Updater" "WARN " "检测到绑定的出口 IP ($RAW_BIND_IP) 已丢失,自动退回默认路由!"
|
||||
else
|
||||
@@ -62,28 +51,24 @@ if [ -n "$BIND_IP" ]; then
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 3. 容灾机制拉取 UA 指纹池 (V3.3.0 引入 30 天错峰防惊群逻辑)
|
||||
# [指纹池滚动更新] 错峰调度防惊群风暴算法
|
||||
# 强制设定 30 天超长冷静期以规避 Github 限流与特征同构
|
||||
# ==========================================================
|
||||
NOW=$(date +%s)
|
||||
LAST_UPDATE=0
|
||||
|
||||
# 读取上一次更新的时间戳
|
||||
if [ -f "$UA_TIME_FILE" ]; then
|
||||
# tr -d 清除可能存在的换行或回车符,防止算术崩溃
|
||||
LAST_UPDATE=$(cat "$UA_TIME_FILE" | tr -d '\r\n')
|
||||
fi
|
||||
|
||||
# 校验数据合法性,防崩溃
|
||||
if ! [[ "$LAST_UPDATE" =~ ^[0-9]+$ ]]; then
|
||||
LAST_UPDATE=0
|
||||
fi
|
||||
|
||||
DIFF=$((NOW - LAST_UPDATE))
|
||||
|
||||
# 距离上次拉取超过 30 天 (2592000 秒),才执行下载
|
||||
if [ "$DIFF" -ge 2592000 ] || [ "$LAST_UPDATE" -eq 0 ]; then
|
||||
TMP_UA="/tmp/ip_sentinel_ua.txt"
|
||||
# 使用重装升级后的 CURL_CMD
|
||||
$CURL_CMD "${REPO_RAW_URL}/data/user_agents.txt" -o "$TMP_UA"
|
||||
|
||||
if [ -s "$TMP_UA" ]; then
|
||||
@@ -99,9 +84,9 @@ else
|
||||
log "Updater" "INFO " "⏳ 设备指纹池处于 30 天静默期 (剩余约 ${DAYS_LEFT} 天),跳过拉取"
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 4. 容灾机制拉取当地最新搜索词库 (每日高频拉取,保证活体新鲜度)
|
||||
# ==========================================================
|
||||
# ----------------------------------------------------------
|
||||
# [态势感知热更] 动态注入本土高权热搜及战区 LBS 规则
|
||||
# ----------------------------------------------------------
|
||||
TMP_KW="/tmp/ip_sentinel_kw.txt"
|
||||
$CURL_CMD "${REPO_RAW_URL}/data/keywords/kw_${REGION_CODE}.txt" -o "$TMP_KW"
|
||||
|
||||
@@ -113,9 +98,6 @@ else
|
||||
rm -f "$TMP_KW"
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 5. 自适应拉取本地 LBS 专属 JSON 规则库 (每日同步)
|
||||
# ==========================================================
|
||||
REGION_JSON_FILE=$(find "${INSTALL_DIR}/data/regions" -name "*.json" 2>/dev/null | head -n 1)
|
||||
|
||||
if [ -n "$REGION_JSON_FILE" ] && [ -f "$REGION_JSON_FILE" ]; then
|
||||
@@ -134,18 +116,23 @@ if [ -n "$REGION_JSON_FILE" ] && [ -f "$REGION_JSON_FILE" ]; then
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 5.5. 容灾更新深海声呐底层探针 (彻底消除第三方 RCE 依赖)
|
||||
# [容灾校验] 外置供应链投毒防线与底层签名嗅探
|
||||
# ==========================================================
|
||||
TMP_PROBE="/tmp/ip_sentinel_probe.sh"
|
||||
$CURL_CMD "https://raw.githubusercontent.com/xykt/IPQuality/main/ip.sh" -o "$TMP_PROBE"
|
||||
if [ -s "$TMP_PROBE" ]; then
|
||||
|
||||
# 严格过滤无标识或 HTML 劫持阻断页面,免疫上游源的降级攻击
|
||||
if [ -s "$TMP_PROBE" ] && grep -q "xykt" "$TMP_PROBE" 2>/dev/null; then
|
||||
mv "$TMP_PROBE" "${INSTALL_DIR}/core/ip_probe.sh"
|
||||
chmod +x "${INSTALL_DIR}/core/ip_probe.sh"
|
||||
log "Updater" "INFO " "✅ 深海声呐底层探针 (ip_probe.sh) 源文件安全对齐"
|
||||
else
|
||||
log "Updater" "WARN " "❌ 探针源文件拉取受损或遭投毒劫持,已触发防砖机制,保留本地旧版本"
|
||||
rm -f "$TMP_PROBE" 2>/dev/null
|
||||
fi
|
||||
|
||||
# ==========================================================
|
||||
# 6. 日志防满瘦身机制 (保留最近 2000 行)
|
||||
# [空间瘦身] 长效健康清理与爆栈预防机制
|
||||
# ==========================================================
|
||||
if [ -f "$LOG_FILE" ]; then
|
||||
tail -n 2000 "$LOG_FILE" > "${LOG_FILE}.tmp"
|
||||
|
||||
100
data/keywords/kw_AE.txt
Normal file
100
data/keywords/kw_AE.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
sunil kumar sadasivan uae draw
|
||||
manorama
|
||||
دائرة القضاء
|
||||
കാല്പന്തുകളി
|
||||
nifty 50
|
||||
the odyssey
|
||||
excessive heat
|
||||
weather
|
||||
weather today
|
||||
bbc urdu
|
||||
bahrain
|
||||
جياني إنفانتينو
|
||||
us iran
|
||||
connor murphy
|
||||
الطقس
|
||||
കാലാവസ്ഥ
|
||||
vaibhav sooryavanshi
|
||||
georgina rodríguez
|
||||
weather abu dhabi
|
||||
folarin balogun
|
||||
الولايات المتحدة ضد بلجيكا
|
||||
usa vs belgium
|
||||
messi age
|
||||
ميسي
|
||||
كريستيانو رونالدو
|
||||
mikel merino
|
||||
bernardo silva
|
||||
how old is ronaldo
|
||||
uae families travel safety dubai police
|
||||
manorama news
|
||||
malayalam news
|
||||
anthony gordon
|
||||
england vs
|
||||
jarell quansah
|
||||
julián quiñones
|
||||
raúl jiménez
|
||||
bbc sport
|
||||
england v mexico
|
||||
iphone 17 pro
|
||||
فرنسا ضد باراغواي
|
||||
paraguay vs france
|
||||
france vs paraguay
|
||||
مباراة المغرب القادمة
|
||||
azzedine ounahi
|
||||
achraf hakimi
|
||||
brahim díaz
|
||||
مباراة المغرب
|
||||
ലയണല് മെസ്സി
|
||||
temperature
|
||||
دبي
|
||||
taylor swift
|
||||
كولومبيا ضد غانا
|
||||
brazil vs norway
|
||||
diney
|
||||
argentina next match
|
||||
colombia vs ghana
|
||||
sidny lopes cabral
|
||||
todays world cup matches
|
||||
algerie suisse
|
||||
luca zidane
|
||||
मौसम
|
||||
سويسرا ضد الجزائر
|
||||
എയര് ഇന്ത്യ
|
||||
switzerland vs algeria
|
||||
portugal vs spain
|
||||
world cup 2026 schedule
|
||||
diogo jota
|
||||
fifa world cup 2026™
|
||||
games
|
||||
الولايات المتحدة ضد البوسنة والهرسك
|
||||
usa vs bosnia and herzegovina
|
||||
ismaïla sarr
|
||||
thibaut courtois
|
||||
mory diaw
|
||||
claude fable 5
|
||||
belgique – sénégal
|
||||
lottery
|
||||
العاب
|
||||
10
|
||||
ind vs eng
|
||||
world cup top scorers
|
||||
المكسيك ضد الإكوادور
|
||||
world cup results
|
||||
mexico vs ecuador
|
||||
ousmane dembélé
|
||||
france – suède
|
||||
etihad rail stations
|
||||
world cup bracket
|
||||
morocco fc
|
||||
crysencio summerville
|
||||
virgil van dijk
|
||||
bart verbruggen
|
||||
cody gakpo
|
||||
مباريات اليوم
|
||||
new zealand vs england
|
||||
pays-bas – maroc
|
||||
madhyamam
|
||||
criminal liability
|
||||
météo
|
||||
morocco vs netherlands
|
||||
@@ -1,200 +1,100 @@
|
||||
coles
|
||||
elon musk
|
||||
ben roberts-smith
|
||||
ig
|
||||
danish malewar
|
||||
assassin's creed black flag resynced
|
||||
sarfaraz khan
|
||||
kartik sharma
|
||||
instagram stories not working
|
||||
meningococcal b
|
||||
sundaresh menon
|
||||
thunder vs suns
|
||||
cade cunningham
|
||||
real salt lake vs inter miami
|
||||
pope francis
|
||||
camera
|
||||
anzac
|
||||
teams
|
||||
kids news
|
||||
bonds
|
||||
hung cao
|
||||
classroom
|
||||
michael jackson biopic movie
|
||||
india women vs south africa women
|
||||
nato
|
||||
bayern munich
|
||||
barcelona vs celta vigo
|
||||
bournemouth vs leeds
|
||||
leverkusen vs bayern
|
||||
psl
|
||||
burnley vs man city
|
||||
elche vs atlético madrid
|
||||
lsg vs rr
|
||||
pakistan super league
|
||||
kyle sandilands alleged rant jackie o
|
||||
carrie bickmore
|
||||
adam levine
|
||||
alexandra eala
|
||||
tubi
|
||||
charles melton
|
||||
nuclear weapon
|
||||
janet jackson
|
||||
justin bieber australia tour
|
||||
fleche wallonne 2026
|
||||
ange postecoglou
|
||||
john hattie
|
||||
airbus a380
|
||||
real madrid vs alavés
|
||||
brighton vs chelsea
|
||||
woolworth
|
||||
nitish rana
|
||||
lyrid meteor shower
|
||||
世界地球日
|
||||
youth gang
|
||||
earth day
|
||||
crystal palace vs west ham
|
||||
d4vd
|
||||
mi vs gt
|
||||
perth weather
|
||||
elijah hollands carlton football club
|
||||
fair work commission fuel
|
||||
vanguard
|
||||
sydney sweeney
|
||||
cailee spaeny
|
||||
psg vs lyon
|
||||
sporting vs benfica
|
||||
celtics vs 76ers
|
||||
bundesliga
|
||||
pl
|
||||
afc cup
|
||||
mars rover
|
||||
celtic fc
|
||||
bayern vs vfb stuttgart
|
||||
bom radar
|
||||
sydney weather
|
||||
melbourne weather
|
||||
brisbane weather
|
||||
adelaide weather
|
||||
myGov login
|
||||
news.com.au
|
||||
rory mcilroy
|
||||
conor nash
|
||||
jarome luai
|
||||
ryan cho hidden camera charges
|
||||
narendra modi visit australia
|
||||
luke wilson
|
||||
wegovy pill australia
|
||||
boyz to men australia tour
|
||||
jillian segal
|
||||
dodgers vs rockies
|
||||
state of origin game 3
|
||||
missing k2 airways boeing 737
|
||||
queen mary of denmark
|
||||
nab
|
||||
shampoo
|
||||
mortgage brokers
|
||||
capital gains tax
|
||||
connor murphy
|
||||
strawberry fields
|
||||
echo law qantas
|
||||
singapore airlines
|
||||
dreamdoll
|
||||
fraud
|
||||
economy of australia
|
||||
christian pulisic
|
||||
usmnt vs belgium national football team lineups
|
||||
amadou onana
|
||||
trossard
|
||||
de bruyne
|
||||
pam the bird
|
||||
julia morris
|
||||
tattslotto
|
||||
jordan henderson
|
||||
morgan rogers
|
||||
first guardian master shield superannuation
|
||||
jarell quansah
|
||||
alireza faghani
|
||||
julián quiñones
|
||||
bellingham england
|
||||
gilberto mora
|
||||
knights vs dolphins
|
||||
robert irwin
|
||||
check my ticket
|
||||
child care
|
||||
daycare
|
||||
childcare
|
||||
kevin prince boateng
|
||||
abc news
|
||||
nrl ladder
|
||||
afl scores
|
||||
afl fixture
|
||||
matildas
|
||||
sam kerr
|
||||
bunnings opening hours
|
||||
coles catalogue
|
||||
woolies specials
|
||||
qantas
|
||||
virgin australia
|
||||
jetstar flights
|
||||
commbank
|
||||
asx 200
|
||||
sydney morning herald
|
||||
the age
|
||||
ticketek
|
||||
ticketmaster
|
||||
opal card top up
|
||||
myki top up
|
||||
translink timetable
|
||||
transperth journey planner
|
||||
adelaide metro
|
||||
adelaide 500
|
||||
adelaide crows
|
||||
port adelaide
|
||||
penrith panthers
|
||||
brisbane broncos
|
||||
collingwood fc
|
||||
sydney swans
|
||||
west coast eagles
|
||||
paraguay vs france
|
||||
wimbledon results 2026
|
||||
gold coast vs collingwood
|
||||
fremantle dockers
|
||||
canberra raiders
|
||||
mcg events
|
||||
optus stadium
|
||||
the gabba
|
||||
state of origin
|
||||
australian open
|
||||
melbourne cup
|
||||
masterchef australia
|
||||
mafs australia
|
||||
petrol prices near me
|
||||
australia post tracking
|
||||
service nsw login
|
||||
vicroads
|
||||
queensland health
|
||||
medicare
|
||||
ato
|
||||
jb hi-fi
|
||||
kmart
|
||||
amazon.com.au
|
||||
vivid sydney
|
||||
mona hobart
|
||||
dark mofo
|
||||
floriade canberra
|
||||
rottnest island ferry
|
||||
sydney airport arrivals
|
||||
rba interest rate
|
||||
nsw school holidays
|
||||
qld school holidays
|
||||
wa school holidays
|
||||
m4 traffic updates
|
||||
west gate tunnel updates
|
||||
bruce highway traffic
|
||||
taylor swift
|
||||
netflix
|
||||
gemini
|
||||
chatgpt
|
||||
margot robbie
|
||||
oscar piastri
|
||||
formula 1
|
||||
supercars championship
|
||||
ufc
|
||||
optus sport
|
||||
telstra outage
|
||||
kayo sports
|
||||
domain real estate
|
||||
realestate.com.au
|
||||
seek jobs
|
||||
gumtree
|
||||
westpac login
|
||||
anz internet banking
|
||||
nab login
|
||||
aldi catalogue
|
||||
big w
|
||||
target australia
|
||||
the good guys
|
||||
officeworks
|
||||
dan murphys
|
||||
bws
|
||||
chemist warehouse
|
||||
priceline
|
||||
uber eats
|
||||
menulog
|
||||
dominos
|
||||
centrelink login
|
||||
medicare online
|
||||
passport renewal
|
||||
aec enrolment
|
||||
agl energy
|
||||
origin energy
|
||||
stan
|
||||
binge
|
||||
9now
|
||||
7plus
|
||||
abc iview
|
||||
hoyts cinemas
|
||||
event cinemas
|
||||
big bash league
|
||||
the ashes
|
||||
socceroos
|
||||
bathurst 1000
|
||||
booking.com
|
||||
airbnb
|
||||
webjet
|
||||
bali weather
|
||||
smartraveller
|
||||
lotto results
|
||||
powerball results
|
||||
dutton ranch
|
||||
hawthorn vs melbourne
|
||||
all blacks vs france
|
||||
luis suarez
|
||||
colombia vs ghana
|
||||
lisandro martínez
|
||||
qatar airways
|
||||
supermarket
|
||||
sébastien desabre
|
||||
australia house prices
|
||||
johan manzambi
|
||||
bat rabies death
|
||||
switzerland vs algeria
|
||||
diogo jota
|
||||
portugal
|
||||
rafael leao
|
||||
pokemon 30th anniversary pre order
|
||||
jacinta nampijinpa price
|
||||
dp world tour
|
||||
ethan strange
|
||||
sophie, duchess of edinburgh
|
||||
betts shoes administration
|
||||
usa vs bosnia and herzegovina
|
||||
oz lotto
|
||||
jaylen brown
|
||||
romelu lukaku
|
||||
australia july 1 financial changes
|
||||
karl stefanovic radio show cancellation
|
||||
lachie neale ross lyon meeting
|
||||
moises henriques international switch
|
||||
kalgoorlie coles
|
||||
piero hincapié
|
||||
mexico national football team vs ecuador national football team stats
|
||||
mexico
|
||||
mexico ecuador
|
||||
mexico vs ecuador
|
||||
anthony albanese ey
|
||||
summerville
|
||||
supreme court of the united states
|
||||
issa diop
|
||||
wout weghorst
|
||||
cody gakpo
|
||||
van hecke
|
||||
ndis taskforce conviction statistics
|
||||
truck crash hume highway
|
||||
hakimi
|
||||
new south wales police
|
||||
|
||||
100
data/keywords/kw_BD.txt
Normal file
100
data/keywords/kw_BD.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
t
|
||||
fa
|
||||
graham platner
|
||||
চুক্তি
|
||||
প্রথম আলো
|
||||
result
|
||||
bdnews24
|
||||
mi new york vs san francisco unicorns standings
|
||||
বাংলাদেশ রেলপথ
|
||||
newspaper
|
||||
bbc bangla
|
||||
মাদ্রাসা শিক্ষা অধিদপ্তর
|
||||
বৈঠক
|
||||
fifa president infantino
|
||||
imo
|
||||
ফ্রান্স বনাম মরক্কো
|
||||
weather
|
||||
spain vs belgium
|
||||
weather today
|
||||
argentina vs switzerland head to head
|
||||
beef
|
||||
switzerland vs colombia world cup 2026
|
||||
বেলজিয়াম
|
||||
round of 8
|
||||
hans vanaken
|
||||
malik tillman
|
||||
amadou onana
|
||||
leandro trossard
|
||||
portugal
|
||||
christian pulisic
|
||||
zim vs ban
|
||||
argentina vs norway
|
||||
সেনেগাল
|
||||
আর্জেন্টিনা বনাম মিশর
|
||||
portugal vs spain world cup 2026
|
||||
পর্তুগাল বনাম স্পেন
|
||||
mexico national football team
|
||||
mexico england
|
||||
gilberto mora
|
||||
raúl jiménez
|
||||
আয়কর
|
||||
কিলিয়ান এমবাপে
|
||||
ব্রাজিল বনাম নরওয়ে
|
||||
fifa world cup today match
|
||||
england vs mexico
|
||||
brazil versus norway
|
||||
fifa next match
|
||||
নবম পে স্কেল
|
||||
paraguay vs france
|
||||
morocco fc
|
||||
colombia next match
|
||||
argentina vs cabo verde
|
||||
কলম্বিয়া
|
||||
luis díaz
|
||||
antoine semenyo
|
||||
ফিফা বিশ্বকাপ ২০২৬
|
||||
argentina vs egypt
|
||||
round of 16
|
||||
gonzalo montiel
|
||||
fifa world cup brackets
|
||||
seattle orcas vs mi new york standings
|
||||
প্রাথমিক বিদ্যালয়
|
||||
argentina vs cabo verde world cup 2026
|
||||
rubén vargas
|
||||
ibrahim maza
|
||||
gregor kobel
|
||||
আকিজ গ্রুপ
|
||||
সুইজারল্যান্ড বনাম আলজেরিয়া
|
||||
australia vs egypt
|
||||
portugal vs spain
|
||||
dhaka stock exchange
|
||||
switzerland vs algeria world cup 2026
|
||||
portugal vs croatia world cup 2026
|
||||
দৈনিক প্রথম আলো
|
||||
জবাই
|
||||
যুক্তরাষ্ট্র বনাম বসনিয়া
|
||||
পর্তুগাল বনাম ক্রোয়েশিয়া
|
||||
দৈনিক কালবেলা
|
||||
বেলজিয়াম বনাম সেনেগাল
|
||||
krépin diatta
|
||||
পূর্বাভাস
|
||||
england vs dr congo world cup 2026
|
||||
oneplus n6
|
||||
norway vs brazil football history
|
||||
belgium vs senegal
|
||||
2027 bmw x5
|
||||
piero hincapié
|
||||
roberto alvarado
|
||||
guillermo ochoa
|
||||
british american tobacco
|
||||
আবহাওয়ার খবর
|
||||
michael jackson biopic
|
||||
সম্মিলিত ইসলামী ব্যাংক
|
||||
neil el aynaoui
|
||||
fifa world cup 2026 results
|
||||
noussair mazraoui
|
||||
wout weghorst
|
||||
azzedine ounahi
|
||||
ফাইনাল
|
||||
মুস্তাফা মনোয়ার
|
||||
100
data/keywords/kw_BG.txt
Normal file
100
data/keywords/kw_BG.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
нап
|
||||
дир
|
||||
dir
|
||||
пик
|
||||
outlook
|
||||
нато
|
||||
radio
|
||||
9 юли
|
||||
труд
|
||||
pogoda
|
||||
диагноза българия
|
||||
камелия нейкова
|
||||
wetter
|
||||
медия
|
||||
габриеле мини
|
||||
switzerland vs colombia
|
||||
james rodríguez
|
||||
james rodriguez
|
||||
швейцария колумбия
|
||||
колумбия
|
||||
lauren bennett
|
||||
ивайло чочев
|
||||
аржентина египет
|
||||
геомагнитна буря
|
||||
сащ белгия
|
||||
usa vs belgium
|
||||
portugal
|
||||
nuno mendes
|
||||
боташ
|
||||
yamal
|
||||
ейса гонсалес
|
||||
ивайло мирчев
|
||||
световно
|
||||
полша
|
||||
созопол
|
||||
england mexico
|
||||
мексико срещу англия
|
||||
mexico england
|
||||
world cup 2026
|
||||
fifa
|
||||
национална агенция за приходите
|
||||
france vs paraguay
|
||||
време
|
||||
делян пеевски
|
||||
тенис
|
||||
франция парагвай
|
||||
2026 fifa dünya kupası
|
||||
бнт на живо
|
||||
wimbledon
|
||||
канада срещу мароко
|
||||
икономика
|
||||
политическа партия
|
||||
главна дирекция „борба с организираната престъпност“
|
||||
дъжд
|
||||
погода
|
||||
перник
|
||||
colombia vs ghana
|
||||
deroy duarte
|
||||
vozinha
|
||||
наталия асенова
|
||||
швейцария алжир
|
||||
симеон дянков
|
||||
швейцария срещу алжир
|
||||
hava durumu
|
||||
швеция
|
||||
времето варна
|
||||
ралица паскалева
|
||||
бедност
|
||||
сащ срещу босна и херцеговина
|
||||
usa vs bosnia and herzegovina
|
||||
bnt 1
|
||||
novak djokovic
|
||||
слънчево изригване
|
||||
белгия сенегал
|
||||
belgium vs senegal
|
||||
сенегал
|
||||
mexico vs ecuador
|
||||
мексико еквадор
|
||||
лаура кьовеши
|
||||
fifa world cup games
|
||||
france
|
||||
франция швеция
|
||||
hm
|
||||
франция срещу швеция
|
||||
france vs sweden
|
||||
вадим ермолаев
|
||||
миг-29
|
||||
танкер
|
||||
иван демерджиев
|
||||
метеорология
|
||||
sportal
|
||||
netherlands vs morocco
|
||||
кмет
|
||||
самсунг
|
||||
земетресение турция
|
||||
24
|
||||
29 юни
|
||||
десислава радева
|
||||
dunavmost.com
|
||||
българия
|
||||
@@ -1,140 +1,100 @@
|
||||
gta 6
|
||||
japon
|
||||
padres vs rockies
|
||||
guide de la révolution de l'iran
|
||||
casa pia vs braga
|
||||
denaturalization
|
||||
ocean
|
||||
alberta referendum
|
||||
vfb stuttgart vs sc freiburg
|
||||
gpt 5.5
|
||||
noah cates
|
||||
pwhl scores
|
||||
hank idsinga
|
||||
karoline leavitt
|
||||
ottawa charge
|
||||
million dollar secret
|
||||
white sox vs diamondbacks
|
||||
suns vs thunder
|
||||
stars vs wild
|
||||
jaafar jackson
|
||||
airport
|
||||
grand theft auto vi
|
||||
pentagone
|
||||
etats unis
|
||||
monette farms news
|
||||
jose soriano
|
||||
jon cooper
|
||||
barcelona vs celta vigo
|
||||
764
|
||||
david scott
|
||||
rodrigo duterte
|
||||
u18 world championship
|
||||
zara tindall
|
||||
graham platner
|
||||
lsg vs rr
|
||||
nikki glaser
|
||||
global news edmonton
|
||||
policier
|
||||
nuclear weapon
|
||||
motorcycle
|
||||
msc francesca
|
||||
poet stock
|
||||
fifa tickets
|
||||
7 jours
|
||||
alexandra eala
|
||||
earth
|
||||
zara larsson
|
||||
girona vs real betis
|
||||
kevyn adams
|
||||
ali khamenei
|
||||
inter – côme
|
||||
leicester city vs hull
|
||||
fenerbahçe
|
||||
françois bonnardel
|
||||
missile
|
||||
real madrid vs alavés
|
||||
vrabel and russini photos
|
||||
will trent
|
||||
ibm
|
||||
lecce vs fiorentina
|
||||
celeste rivas hernandez
|
||||
abhishek bachchan
|
||||
national guard of the united states
|
||||
triathlon
|
||||
vincent trocheck
|
||||
benyamin netanyahou
|
||||
kings vs avalanche
|
||||
crème solaire
|
||||
trabzonspor vs istanbul başakşehir
|
||||
indigenous rights
|
||||
meghan, duchess of sussex
|
||||
gwyneth paltrow
|
||||
toronto gas prices
|
||||
président
|
||||
mets vs cubs
|
||||
matt fitzpatrick
|
||||
sénateurs – hurricanes
|
||||
senators vs hurricanes
|
||||
man utd
|
||||
spurs
|
||||
evan mobley
|
||||
chelsea vs man united
|
||||
atlético madrid vs real sociedad
|
||||
roma vs atalanta
|
||||
cf montreal
|
||||
jakob poeltl
|
||||
ukraine
|
||||
contrôle routier québec
|
||||
bachelorette 2026
|
||||
lens – toulouse
|
||||
arber xhekaj
|
||||
leylah fernandez
|
||||
anthropic
|
||||
paige wwe
|
||||
inter – cagliari
|
||||
carrie ann inaba
|
||||
syria
|
||||
highway hotline sk
|
||||
real betis vs braga
|
||||
vincent bolloré
|
||||
europa conference league
|
||||
resident alien
|
||||
battlefield 6
|
||||
aston villa vs bologna
|
||||
nottm forest vs porto
|
||||
soccer
|
||||
lamour est dans le pré
|
||||
luis suárez
|
||||
listeria
|
||||
strc
|
||||
bayern
|
||||
arda güler
|
||||
aleksandar pavlović
|
||||
kooora
|
||||
yalla kora
|
||||
ina garten
|
||||
jordan goodwin
|
||||
jerami grant
|
||||
jimmy snuggerud
|
||||
clav
|
||||
bts
|
||||
zach galifianakis
|
||||
billy crystal
|
||||
club américa vs nashville
|
||||
allison williams
|
||||
CBC News
|
||||
Canada.ca
|
||||
Toronto Weather
|
||||
NHL Scores
|
||||
Amazon.ca
|
||||
Air Canada
|
||||
Service Canada
|
||||
CRA login
|
||||
Rogers
|
||||
Bell Internet
|
||||
Tim Hortons
|
||||
Indigo
|
||||
Canadian Tire
|
||||
Walmart Canada
|
||||
Toronto Raptors
|
||||
saskatoon weather
|
||||
weather saskatoon
|
||||
flight instructor jumps out of plane
|
||||
amber alert
|
||||
charlize theron
|
||||
dodgers
|
||||
tiffany haddish
|
||||
gakuran codes
|
||||
paddy pimblett
|
||||
avion
|
||||
kps gill
|
||||
ernie clement
|
||||
margaret qualley
|
||||
allison janney
|
||||
keke palmer
|
||||
trevor mcdonald
|
||||
sky vs mercury
|
||||
rockies vs dodgers
|
||||
nba
|
||||
colbert
|
||||
dreamdoll
|
||||
richmond bc charter boat sinking
|
||||
lac megantic disaster
|
||||
sea to sky highway accident
|
||||
landen roupp
|
||||
storm vs sparks
|
||||
kevin gausman
|
||||
house of the dragon season 3 episode 3
|
||||
iron bird seed
|
||||
usa vs belgium prediction
|
||||
switzerland vs colombia
|
||||
who is left in the world cup
|
||||
fifa schedule
|
||||
wonderwall
|
||||
who will england play next
|
||||
bellingham yellow card
|
||||
demar derozan
|
||||
weather calgary
|
||||
mets vs braves
|
||||
québec
|
||||
lee greenwood
|
||||
mark zuckerberg
|
||||
enola holmes
|
||||
nick jonas
|
||||
boston bar fire
|
||||
fire vs storm
|
||||
northern lights
|
||||
shohei ohtani
|
||||
louis varland
|
||||
july 4th
|
||||
round of 16
|
||||
nba summer league 2026
|
||||
george springer baby
|
||||
sean keys
|
||||
emma stone
|
||||
luis castillo
|
||||
northern lights forecast
|
||||
fifa president
|
||||
real madrid
|
||||
sick leave germany
|
||||
fourth of july
|
||||
egypt vs australia
|
||||
gianni infantino
|
||||
storm vs mercury
|
||||
내일 날씨
|
||||
kyle lowry
|
||||
stephen colbert
|
||||
toronto fireworks canada day
|
||||
maple leafs nhl free agency
|
||||
clint black
|
||||
canada day fireworks victoria
|
||||
tom hanks
|
||||
mel gibson
|
||||
الطقس غدًا
|
||||
fireworks kelowna
|
||||
big coast charter vessel
|
||||
加拿大国庆日
|
||||
día de canadá
|
||||
mexico next game
|
||||
love island usa season 8 episode 25
|
||||
angels vs mariners
|
||||
fargo
|
||||
rush concert
|
||||
fête du canada
|
||||
weather network edmonton
|
||||
weather radar
|
||||
edmonton weather
|
||||
norway vs ivory coast
|
||||
nrg stadium
|
||||
walton goggins
|
||||
2026 world cup
|
||||
world cup games tomorrow
|
||||
matchs de coupe du monde
|
||||
fifa world cup 2022
|
||||
apple iphone 18 pro max
|
||||
msi 2026
|
||||
banff accident today
|
||||
beck malenstyn
|
||||
from season 5
|
||||
canada day
|
||||
|
||||
@@ -1,163 +1,100 @@
|
||||
matthias ginter
|
||||
ralf schmitz
|
||||
maximilian eggestein
|
||||
hull city
|
||||
demirovic
|
||||
elton john
|
||||
jeff chabot
|
||||
lindt schokolade
|
||||
manzambi
|
||||
angelo stiller
|
||||
lamine yamal verletzung
|
||||
peer steinbrück
|
||||
h&m
|
||||
lotto 6aus49
|
||||
pistons – magic
|
||||
chemnitzer fc erzgebirge aue
|
||||
asiago
|
||||
23 nisan
|
||||
sternschnuppen heute lyriden
|
||||
aryna sabalenka
|
||||
michael douglas
|
||||
herman van veen
|
||||
georgina fleur
|
||||
tui
|
||||
trainer bayern münchen
|
||||
katie holmes
|
||||
prinz frederic
|
||||
bayern vs
|
||||
flekken
|
||||
бернли – манчестер сити
|
||||
ard
|
||||
queen camilla
|
||||
clankriminalität
|
||||
politik
|
||||
gladbach-news
|
||||
sara gündogan
|
||||
krankenversicherung
|
||||
jan-lennard struff
|
||||
bryan lasme
|
||||
republikanische partei
|
||||
thailand
|
||||
robin gosens
|
||||
maremma
|
||||
tennis madrid
|
||||
osterburg
|
||||
برايتون ضد تشيلسي
|
||||
sebastian hoeneß
|
||||
ncis
|
||||
menowin fröhlich
|
||||
maren gilzer
|
||||
cineplex
|
||||
gina schumacher
|
||||
alexander räuscher
|
||||
riza kayaalp
|
||||
heppenheim
|
||||
ministerpräsident
|
||||
robbie williams
|
||||
brian littrell
|
||||
saarbrücken hauptbahnhof
|
||||
frauen-bundesliga
|
||||
lemgo
|
||||
kommissar rex
|
||||
hemsbach
|
||||
benjamin weber
|
||||
sydney sweeney
|
||||
martin schindler
|
||||
robert kennedy
|
||||
antoni kowalski
|
||||
luna
|
||||
paris-sg – lyon
|
||||
arte live
|
||||
dominik kohr
|
||||
dumbledores geheimnisse
|
||||
kampf der realitystars
|
||||
kerner
|
||||
tennessee
|
||||
billy idol
|
||||
kfc uerdingen
|
||||
bastian pastewka
|
||||
gnabry
|
||||
lok leipzig heute live ticker
|
||||
true lies wahre lügen
|
||||
челси – манчестер юнайтед
|
||||
nurburgring
|
||||
fortnite server status
|
||||
süperlig
|
||||
ronaldinho
|
||||
esther schweins let's dance
|
||||
michael jackson film 2026
|
||||
oliver pocher
|
||||
die queen film
|
||||
milano
|
||||
straße von hormus
|
||||
motsi mabuse
|
||||
rayo vallecano
|
||||
harry meghan
|
||||
irland
|
||||
betis sevilla
|
||||
vermisste person
|
||||
konferenz league
|
||||
garda
|
||||
judith hoersch
|
||||
jörg pilawa
|
||||
strasbourg
|
||||
real madrid vs bayern
|
||||
kicker
|
||||
mbappe
|
||||
flashscore
|
||||
sport1
|
||||
vini jr
|
||||
bet365
|
||||
kompany
|
||||
jude bellingham
|
||||
upamecano
|
||||
gute zeiten, schlechte zeiten
|
||||
regierungserklärung
|
||||
erdogan revolver nato
|
||||
fußball wm frankreich marokko
|
||||
gesundheitssystem
|
||||
katy karrenbauer
|
||||
hannah dugan
|
||||
rp online
|
||||
torgau
|
||||
könig charles iii
|
||||
tilly norwood
|
||||
evelyn palla
|
||||
onana belgien
|
||||
kai wegner
|
||||
marlene lufen
|
||||
du bist halle
|
||||
wetter münchen
|
||||
usa iran
|
||||
bären
|
||||
ertrinken
|
||||
bayern 1
|
||||
anita orbán
|
||||
argentina vs egypt world cup 2026
|
||||
raffelberger mineralbrunnen gmbh
|
||||
norwegen england
|
||||
inflation
|
||||
fog warning
|
||||
wetter bochum
|
||||
wetter aachen
|
||||
wetter bonn
|
||||
onet
|
||||
protest
|
||||
jamie dornan
|
||||
heizöl
|
||||
champions league
|
||||
uefa champions league
|
||||
keytruda
|
||||
péter magyar
|
||||
psg
|
||||
hechingen
|
||||
şampiyonlar ligi
|
||||
tschernobyl 1986
|
||||
amazon video
|
||||
paris saint-germain
|
||||
dietrich grönemeyer
|
||||
fränkische schweiz
|
||||
scarlett johansson
|
||||
jeff bezos
|
||||
dan brown
|
||||
паспорт громадянина україни для виїзду за кордон
|
||||
serena williams
|
||||
манчестер юнайтед – лидс
|
||||
catherine deneuve
|
||||
bobzin
|
||||
sprit
|
||||
kev
|
||||
abschiebung
|
||||
steuer
|
||||
masters rory mcilroy
|
||||
großglockner
|
||||
news38
|
||||
jessie cave
|
||||
michael schulte
|
||||
wetter frankfurt heute
|
||||
bundesliga ergebnisse
|
||||
aktuelle nachrichten deutschland
|
||||
restaurant in der nähe
|
||||
deutsche bahn fahrplan
|
||||
urlaub buchen
|
||||
rezept für kartoffelsalat
|
||||
dax aktueller stand
|
||||
apotheke notdienst frankfurt
|
||||
günstige flüge
|
||||
samsung aktie
|
||||
marine le pen
|
||||
a13
|
||||
jo gerner
|
||||
finanzen.net
|
||||
nicola peltz
|
||||
biomethan
|
||||
wegovy
|
||||
uefa
|
||||
lipowitz tour de france 2026
|
||||
1. fc nürnberg
|
||||
aktie
|
||||
ingrid alexandra
|
||||
schweiz kolumbien prognose
|
||||
berchtesgadener land
|
||||
horoskop
|
||||
washington, d.c.
|
||||
schützenausmarsch hannover 2026
|
||||
bruce w i l l i s
|
||||
tour de france heute
|
||||
dividendenrendite
|
||||
موجة حر
|
||||
bäcker
|
||||
sonntagsfrage
|
||||
joschka fischer
|
||||
endometriose
|
||||
großbrand stuttgart wangen
|
||||
struff
|
||||
afghanistan
|
||||
tresoldi
|
||||
raser
|
||||
stavenhagen
|
||||
gigi hadid
|
||||
global combat air programme
|
||||
ballistische rakete
|
||||
hochzeit taylor swift
|
||||
scuderia ferrari
|
||||
challenge roth
|
||||
erpressung
|
||||
lanz mediathek
|
||||
short squeeze
|
||||
außenminister
|
||||
temperatur
|
||||
autobahn
|
||||
crowdstrike aktie
|
||||
sébastien desabre
|
||||
krankenhaus ludwigslust brennt
|
||||
mark harmon
|
||||
bibi und tina freizeitpark
|
||||
widow's bay
|
||||
wm achtelfinale 2026
|
||||
große backen
|
||||
tjark ernst
|
||||
sondersendung
|
||||
fargo
|
||||
veterinäramt
|
||||
пособие
|
||||
fable 5
|
||||
erneuerbare energien in deutschland
|
||||
piusbruderschaft
|
||||
jürgen hingsen
|
||||
bvb transfer
|
||||
spritpreise tankrabatt
|
||||
lebensbescheinigung
|
||||
steam machine ebay
|
||||
frank-walter steinmeier
|
||||
dieselpreis
|
||||
teheran
|
||||
peter remmert
|
||||
chiemsee
|
||||
eugenia roccella
|
||||
portugal kroatien
|
||||
landeanflug
|
||||
європейська комісія
|
||||
verspätung
|
||||
|
||||
@@ -1,140 +1,100 @@
|
||||
clasificación de primera división
|
||||
javier hidalgo
|
||||
cayetano martínez de irujo
|
||||
llanes
|
||||
vfb stuttgart – freiburg
|
||||
roca rey
|
||||
psv - zwolle
|
||||
daredevil
|
||||
a que estas esperando
|
||||
real oviedo - villarreal
|
||||
real salt lake - inter miami
|
||||
pistons - magic
|
||||
barcelona sc - mushuc runa
|
||||
kick
|
||||
raphinha
|
||||
lluvia estrellas liridas
|
||||
frenkie de jong
|
||||
santos - coritiba
|
||||
del cerro grande
|
||||
phillip cocu
|
||||
cospedal
|
||||
david wilcock
|
||||
barcelona - celta de vigo
|
||||
barcelone – celta vigo
|
||||
macarena gómez
|
||||
luis merlo
|
||||
bournemouth vs leeds
|
||||
racing de estrasburgo - niza
|
||||
rafael jódar
|
||||
burnley vs man city
|
||||
alaska cantante
|
||||
raúl gonzález blanco
|
||||
marta sanchez
|
||||
roberto bautista
|
||||
cifras y letras
|
||||
xbox game pass ultimate
|
||||
horse powertrain
|
||||
las hurdes
|
||||
herbicida cancer colon
|
||||
lluvia de barro
|
||||
ripoll
|
||||
manilva
|
||||
steve jobs
|
||||
berrettini
|
||||
prizmic
|
||||
laura moure
|
||||
lens - toulouse
|
||||
girona vs real betis
|
||||
yuri berchiche
|
||||
clasificacion liga
|
||||
posiciones de la liga
|
||||
resultados liga
|
||||
lfp
|
||||
umar sadiq
|
||||
реал мадрид – алавес
|
||||
jan virgili
|
||||
moreirense - estoril
|
||||
downton abbey
|
||||
ganaderias san fermin 2026
|
||||
aravind srinivas
|
||||
eitb
|
||||
boe
|
||||
unicaja
|
||||
las provincias
|
||||
rtve directo
|
||||
ferran adrià
|
||||
tve
|
||||
la voz de galicia
|
||||
el independiente
|
||||
partido popular
|
||||
semana
|
||||
leonor de borbón
|
||||
tiempo bilbao
|
||||
diario de mallorca
|
||||
presupuesto
|
||||
codigo 10
|
||||
sverre magnus de noruega
|
||||
connor murphy
|
||||
incendio grave
|
||||
juan del val y nuria roca
|
||||
koldo garcía izaguirre
|
||||
jorge martín
|
||||
mike james
|
||||
carla leite
|
||||
eclipse solar del 12 de agosto de 2026
|
||||
crystal palace - west ham
|
||||
luz valdenebro
|
||||
porto - tondela
|
||||
santos - fluminense
|
||||
juventus
|
||||
almería - málaga
|
||||
punjab kings vs lucknow super giants standings
|
||||
mönchengladbach – mainz
|
||||
victor eloy
|
||||
paris-sg – lyon
|
||||
psg vs lyon
|
||||
zamora - osasuna b
|
||||
estrecho
|
||||
nurburgring
|
||||
la 1 directo
|
||||
oyarzabal
|
||||
enrique cerezo
|
||||
fraude
|
||||
tasa
|
||||
la 1
|
||||
tve directo
|
||||
cuántas copas del rey tiene la real sociedad
|
||||
eugenia martínez de irujo
|
||||
ccoo
|
||||
racing de santander
|
||||
racing
|
||||
baliza v16
|
||||
st. pauli – köln
|
||||
iphone 18
|
||||
st. pauli - colonia
|
||||
nico paz
|
||||
lionel messi
|
||||
armengol
|
||||
pau víctor
|
||||
braga fc
|
||||
fiorentina vs crystal palace
|
||||
morante hoy
|
||||
iago aspas
|
||||
aston villa
|
||||
real betis vs braga
|
||||
ministerio de sanidad
|
||||
az - shakhtar
|
||||
arsenal
|
||||
tiktok
|
||||
harry kane
|
||||
sudan
|
||||
lunin
|
||||
airef
|
||||
tiempo de juego
|
||||
fc bayern
|
||||
militao
|
||||
bellingham
|
||||
supervivientes
|
||||
jalen green
|
||||
rockstar games
|
||||
bam adebayo
|
||||
china
|
||||
suns - trail blazers
|
||||
euromillones
|
||||
ldu quito - mirassol
|
||||
davion mitchell
|
||||
universitario - coquimbo unido
|
||||
El País
|
||||
Marca
|
||||
RTVE Noticias
|
||||
La Liga
|
||||
Real Madrid
|
||||
Barcelona FC
|
||||
Tiempo Madrid
|
||||
Renfe
|
||||
Iberia
|
||||
Amazon España
|
||||
El Corte Inglés
|
||||
Hacienda
|
||||
Mercadona
|
||||
YouTube Música
|
||||
Entradas Cine
|
||||
alfonso muñoz cuenca
|
||||
dan buettner
|
||||
xbox
|
||||
encierros san fermin 2026
|
||||
rodri bernardo silva
|
||||
meteorología
|
||||
doku
|
||||
carmen cervera
|
||||
chupinazo san fermin 2026
|
||||
pedro blanco
|
||||
jordan henderson
|
||||
lawfare
|
||||
folarin balogun
|
||||
resultados mundial
|
||||
delcy rodríguez
|
||||
mèxic - anglaterra
|
||||
fifa world cup 2026™
|
||||
brasil noruega
|
||||
paz vega
|
||||
robo
|
||||
unión europea
|
||||
ferrocarril
|
||||
jordi évole
|
||||
luis zahera
|
||||
contrarreloj por equipos
|
||||
vacaciones
|
||||
tu cara me suena
|
||||
julián alvarez
|
||||
richard rios
|
||||
caracol en vivo
|
||||
gol caracol
|
||||
caracol tv
|
||||
colombia mundial
|
||||
colombia fc
|
||||
transfermarkt
|
||||
fifa world cup brackets
|
||||
la muerte de robin hood
|
||||
silo
|
||||
manzambi
|
||||
ana botín
|
||||
radio nacional de españa
|
||||
diputación provincial de cádiz
|
||||
switzerland vs algeria
|
||||
suisse – algérie
|
||||
suiza argelia
|
||||
copa mundial de la fifa 2026™
|
||||
francina armengol
|
||||
niño murciélago
|
||||
estados unidos
|
||||
estados unidos - bosnia y herzegovina
|
||||
usa vs bosnia and herzegovina
|
||||
jaylen brown
|
||||
pepon nieto
|
||||
onana
|
||||
eduardo camavinga
|
||||
sirivannavari
|
||||
dimisión
|
||||
incendio barcelona
|
||||
porta
|
||||
mundial ayer
|
||||
iñaki urdangarin
|
||||
mexique – équateur
|
||||
gilberto mora
|
||||
julián andrés quiñones
|
||||
mundial hoy
|
||||
mexico fc
|
||||
fernando grande-marlaska
|
||||
sheila casas
|
||||
tribunal supremo
|
||||
hacienda
|
||||
migración
|
||||
marruecos vs canada
|
||||
marca
|
||||
papa león xiv
|
||||
denzel dumfries
|
||||
pegasus
|
||||
emma raducanu
|
||||
|
||||
@@ -1,157 +1,100 @@
|
||||
m6
|
||||
caitlyn jenner
|
||||
star academy
|
||||
bfm marseille provence
|
||||
hunter schafer
|
||||
unchosen netflix
|
||||
john travolta
|
||||
valence-romans – brive
|
||||
reem kherici
|
||||
will smith
|
||||
real salt lake – inter miami
|
||||
neymar
|
||||
les traîtres
|
||||
jacob elordi
|
||||
pistons – magic
|
||||
invincible
|
||||
santos – coritiba
|
||||
ios 18
|
||||
la liga
|
||||
royaume uni interdiction tabac
|
||||
stephane tapie
|
||||
tondelier
|
||||
benjamin duhamel
|
||||
loto 22 avril 2026
|
||||
interdiction tabac royaume uni
|
||||
lol qui rit sort
|
||||
eva longoria
|
||||
alain bauer
|
||||
achraf hakimi
|
||||
ibrahim mbaye
|
||||
mma
|
||||
roberto calvet
|
||||
budget
|
||||
coupe du monde de football 2006
|
||||
plus belle la vie en avance
|
||||
mateus fernandes
|
||||
tour des alpes 2026
|
||||
lorenzo finn
|
||||
maine-et-loire
|
||||
mathieu flamini
|
||||
kamel daoud
|
||||
vandalisme
|
||||
sydney sweeney
|
||||
julien odoul
|
||||
france2
|
||||
xavier dupont de ligonnès
|
||||
elisabeth 2
|
||||
antibes
|
||||
girona – betis
|
||||
christine bravo
|
||||
الريال ضد ألافيس
|
||||
madonna age
|
||||
margot haddad
|
||||
ana riera
|
||||
hinaupoko devèze
|
||||
bruce toussaint
|
||||
cheque energie
|
||||
reid wiseman
|
||||
loto 20 avril 2026
|
||||
from serie
|
||||
toulouse
|
||||
racing 92 – stade français
|
||||
juventus - bologna
|
||||
film une annee difficile
|
||||
échouement
|
||||
programme tv ce soir
|
||||
porto – tondela
|
||||
matthieu pigasse
|
||||
santos – fluminense
|
||||
gta 6
|
||||
laetitia milot
|
||||
loto 18 avril 2026
|
||||
bercy
|
||||
pierre lellouche
|
||||
adele
|
||||
adil rami
|
||||
castres – toulouse
|
||||
angel
|
||||
stéphane bern
|
||||
anne claire coudray
|
||||
pmu résultat
|
||||
laury thilleman et paul mirabel
|
||||
quinté du jour
|
||||
euromillions 17 avril 2026
|
||||
uson
|
||||
guillaume meurice
|
||||
pmu
|
||||
grenoble – oyonnax
|
||||
bagarre
|
||||
programme télé
|
||||
tchernobyl
|
||||
géraldine maillet
|
||||
biot
|
||||
racing
|
||||
liga europa
|
||||
tv ce soir
|
||||
programme tv de ce soir
|
||||
brad pitt
|
||||
aston villa
|
||||
michael olise
|
||||
robert ménard
|
||||
match ce soir
|
||||
sporting
|
||||
ester exposito
|
||||
bellingham
|
||||
iptv
|
||||
militao
|
||||
jeff goldblum
|
||||
lunin
|
||||
kiev
|
||||
julien royal
|
||||
viktor orbán
|
||||
aqababe
|
||||
nhl
|
||||
suns – trail blazers
|
||||
bam adebayo
|
||||
davion mitchell
|
||||
l
|
||||
santos – recoleta football club
|
||||
atletico madrid
|
||||
tf1
|
||||
uefa champions league
|
||||
camille cerf
|
||||
giorgi mamardashvili
|
||||
streaming football
|
||||
atlético madryt – fc barcelona
|
||||
miss france
|
||||
rts
|
||||
leonardo balerdi
|
||||
yann barthes
|
||||
alain delon
|
||||
loto du 13 avril 2026
|
||||
juan arbeláez
|
||||
hbo
|
||||
katy perry justin trudeau
|
||||
tondela – gil vicente
|
||||
le rugbynistère
|
||||
epstein
|
||||
kino
|
||||
horoscope du 13 avril 2026
|
||||
golf masters augusta 2026
|
||||
boursorama bourse
|
||||
cac 40
|
||||
sept à huit
|
||||
ligne 12 métro
|
||||
alice taglioni
|
||||
pedro sánchez
|
||||
meteo paris
|
||||
actualités en direct
|
||||
résultats ligue 1
|
||||
pharmacie de garde
|
||||
horaires sncf
|
||||
recette crêpes
|
||||
cac 40 en direct
|
||||
acheter billet louvre
|
||||
boulangerie autour de moi
|
||||
carte vitale ameli
|
||||
la depeche
|
||||
prix carburant
|
||||
mercato
|
||||
thierry valtat grand reporter
|
||||
cgt
|
||||
japan expo 2026
|
||||
nolwenn olivier
|
||||
graham platner
|
||||
air force one
|
||||
feu bordeaux
|
||||
engin explosif
|
||||
radio
|
||||
mondial la marseillaise à pétanque
|
||||
union européenne
|
||||
ilgiz tantashev
|
||||
tesla model y
|
||||
donald trump
|
||||
lucas chevalier
|
||||
chien
|
||||
requins
|
||||
encierro pampelune 2026
|
||||
hellfest
|
||||
bryan johnson
|
||||
rtve directo
|
||||
duc de sussex
|
||||
poubelle
|
||||
conducteur
|
||||
livret a
|
||||
navire
|
||||
resultat loto 6 juillet 2026
|
||||
donation
|
||||
la provence
|
||||
chine
|
||||
portugal vs spain world cup 2026
|
||||
princesse de galles
|
||||
équipe de france
|
||||
verdict
|
||||
resultat bac
|
||||
binance
|
||||
accident a8
|
||||
héritage
|
||||
enseignant
|
||||
résultat match coupe du monde
|
||||
population active
|
||||
thonon-les-bains
|
||||
moissonneuse
|
||||
finistère
|
||||
l'amour est dans le pré
|
||||
clément berthet
|
||||
grotte
|
||||
lons-le-saunier
|
||||
fédération sénégalaise de football
|
||||
astrid n oubliez pas les paroles
|
||||
delphine batho
|
||||
tableau 8eme de finale coupe du monde 2026
|
||||
roxana guzman
|
||||
andré ohanian
|
||||
josé luis chilavert
|
||||
kostiantynivka
|
||||
bison futé
|
||||
argentine cap vert pronostic
|
||||
volkswagen
|
||||
ali khamenei
|
||||
autoroute a9
|
||||
cancer
|
||||
laurent blanc
|
||||
circuit de silverstone
|
||||
meteo toulouse
|
||||
travis kelce
|
||||
jeu vidéo
|
||||
karine le marchand
|
||||
one piece 1187
|
||||
drone
|
||||
banque centrale européenne
|
||||
thomas sotto
|
||||
aurélien enthoven
|
||||
dany leprince
|
||||
pronostic espagne autriche
|
||||
pesticide
|
||||
probleme reseau orange
|
||||
mehdi kessaci
|
||||
ici tout commence du 1 juillet 2026
|
||||
england vs dr congo world cup 2026
|
||||
bad bunny
|
||||
meteo nancy
|
||||
etna
|
||||
elena colas
|
||||
eng vs congo-kinshasa
|
||||
assurance vie
|
||||
rer b
|
||||
côte d'ivoire vs norway world cup 2026
|
||||
resultat brevet 2026
|
||||
keiko fujimori
|
||||
montpellier
|
||||
congé de naissance
|
||||
resultat cdm
|
||||
transfert
|
||||
resultat loto 29 juin 2026
|
||||
resultat bts
|
||||
marché boursier
|
||||
|
||||
@@ -1,155 +1,100 @@
|
||||
weather hong kong
|
||||
天文台
|
||||
hk observatory
|
||||
observatory
|
||||
csk vs mi
|
||||
長沙灣
|
||||
魔音女團
|
||||
明天的天氣
|
||||
球迷世界
|
||||
天星銀行
|
||||
game
|
||||
林嘉華
|
||||
套餐
|
||||
賈曉晨
|
||||
hk weather
|
||||
綠色債券
|
||||
barcelona vs celta vigo
|
||||
weather
|
||||
7-eleven
|
||||
天气
|
||||
班來 對 曼城
|
||||
埃爾切 對 馬德里競技
|
||||
rosenior
|
||||
jaafar jackson
|
||||
艾納斯
|
||||
liam rosenior
|
||||
巴黎聖日耳曼 對 南特
|
||||
chatgpt image 2
|
||||
啟德醫院
|
||||
李泳漢老婆
|
||||
破產
|
||||
weather tomorrow
|
||||
繼承人
|
||||
英皇群星演唱會
|
||||
布浩榮
|
||||
新聞
|
||||
貨幣貶值
|
||||
居 屋 2025
|
||||
3988
|
||||
李泳豪老婆
|
||||
皇家馬德里 對 艾拉維斯
|
||||
李泳漢
|
||||
鄭欣宜
|
||||
srh vs dc
|
||||
鍾嘉欣
|
||||
張柏芝
|
||||
江美儀
|
||||
全港戲院日 2026
|
||||
江旻憓
|
||||
陶傑
|
||||
水晶宮 對 西漢姆聯
|
||||
吉達艾阿里
|
||||
山口智子
|
||||
百佳超級市場
|
||||
利息
|
||||
戴祖儀
|
||||
陳若思
|
||||
麥當勞
|
||||
首岸
|
||||
中国商飞c919
|
||||
pl
|
||||
bundesliga
|
||||
hailey bieber
|
||||
德甲
|
||||
cherki
|
||||
now
|
||||
曼城
|
||||
now tv
|
||||
al nassr
|
||||
洪金寶
|
||||
曼聯
|
||||
車路士
|
||||
切爾西 對 曼聯
|
||||
英超
|
||||
何沛珈
|
||||
熱刺
|
||||
tottenham vs brighton
|
||||
熱刺 對 布萊頓
|
||||
epl
|
||||
ai
|
||||
芊御價單
|
||||
華 富
|
||||
金子涵
|
||||
司機
|
||||
补贴
|
||||
華富邨
|
||||
零售
|
||||
藍莓
|
||||
商湯科技
|
||||
周國豐
|
||||
啟點
|
||||
歐聯
|
||||
神戶勝利船
|
||||
潘宏彬
|
||||
姚正菁
|
||||
木乃伊
|
||||
ios 26
|
||||
李克寧木乃伊
|
||||
田啟文
|
||||
曼寧加
|
||||
arsenal
|
||||
ucl
|
||||
歐洲聯賽冠軍盃
|
||||
arsenal vs sporting
|
||||
bayern vs real madrid
|
||||
real madrid
|
||||
皇馬
|
||||
拜仁慕尼黑 對 皇家馬德里
|
||||
claude
|
||||
補貼
|
||||
nba 直播
|
||||
航空公司
|
||||
向華強
|
||||
李嘉欣
|
||||
typhoon
|
||||
nba
|
||||
nba線上看
|
||||
nba直播
|
||||
全民國家安全教育日
|
||||
運輸署
|
||||
liverpool vs psg
|
||||
利物浦
|
||||
barcelona
|
||||
歐冠
|
||||
馬德里競技 對 巴塞隆納
|
||||
利物浦 對 巴黎聖日耳曼
|
||||
hkjc
|
||||
馬會
|
||||
航空
|
||||
2035
|
||||
man united vs leeds
|
||||
曼聯 對 里茲聯
|
||||
prediction market
|
||||
預測市場
|
||||
polymarket
|
||||
巴基斯坦
|
||||
sndk
|
||||
楊何蓓茵
|
||||
樂珈嘉
|
||||
姜濤
|
||||
日經平均指數
|
||||
飲茶
|
||||
上市公司
|
||||
daniel caesar
|
||||
中年好聲音4
|
||||
香港天文台
|
||||
煤氣
|
||||
livenation
|
||||
政府
|
||||
香港天文台天氣預報
|
||||
MTR 港鐵路線圖
|
||||
OpenRice 附近美食
|
||||
LIHKG 討論區
|
||||
恆生指數今日行情
|
||||
SCMP breaking news
|
||||
HKEX 港交所股價
|
||||
國泰航空航班狀態
|
||||
香港迪士尼樂園門票
|
||||
百佳超級市場網購
|
||||
白石角站
|
||||
star
|
||||
吳亦偉
|
||||
香港01
|
||||
湯洛雯
|
||||
排球
|
||||
國泰航空
|
||||
飛彈
|
||||
朱維德
|
||||
犯罪
|
||||
香港的士
|
||||
羅 雪 妍
|
||||
樂 易 玲
|
||||
酒店
|
||||
溺水
|
||||
九龍華仁中學
|
||||
洪水
|
||||
比寧咸
|
||||
香港 暴雨 警告 信號
|
||||
folarin balogun
|
||||
香港天气
|
||||
usa vs belgium
|
||||
華領醫藥
|
||||
weather
|
||||
天气
|
||||
食用油
|
||||
ib
|
||||
機場
|
||||
黃有龍
|
||||
jordan henderson
|
||||
mexico vs england world cup 2026
|
||||
jarell quansah
|
||||
england mexico
|
||||
墨西哥 對 英格蘭
|
||||
observatory
|
||||
陳松伶
|
||||
薛守智醫生
|
||||
paraguay vs france
|
||||
巴拉圭 對 法國
|
||||
whatsapp
|
||||
france vs paraguay
|
||||
巴西對挪威
|
||||
巴拉圭
|
||||
加拿大對摩洛哥
|
||||
canada vs morocco
|
||||
巴士
|
||||
16 強 賽程 表
|
||||
taylor swift
|
||||
屯 門 官 立 中學
|
||||
尹兆堅
|
||||
墨西哥
|
||||
風
|
||||
sidny lopes cabral
|
||||
colombia vs ghana
|
||||
世界杯赛程
|
||||
安多尼·伊勞拉
|
||||
瑞士足球
|
||||
switzerland vs algeria
|
||||
皇崗口岸
|
||||
百佳超市
|
||||
diogo jota
|
||||
世界杯賽程
|
||||
portugal fc
|
||||
葡萄牙對克羅地亞 直播
|
||||
馬鞍山信義學校
|
||||
曾志偉
|
||||
梁珊
|
||||
日元
|
||||
財務 自由
|
||||
日元兌港元
|
||||
903
|
||||
維德角國家足球隊
|
||||
恆生指數
|
||||
美國
|
||||
郭羨妮
|
||||
一號戒備信號
|
||||
黃錦輝
|
||||
董建華
|
||||
英格蘭對剛果民主共和國
|
||||
宣萱
|
||||
巨無霸餐買一送一
|
||||
kawhi leonard
|
||||
梁芷珮
|
||||
world cup 2026 schedule
|
||||
氣旋
|
||||
失業
|
||||
角球
|
||||
hakimi
|
||||
netherlands
|
||||
cody gakpo
|
||||
荷蘭 對 摩洛哥
|
||||
netherlands vs morocco
|
||||
林凱恩
|
||||
疥瘡
|
||||
低氣壓
|
||||
|
||||
100
data/keywords/kw_ID.txt
Normal file
100
data/keywords/kw_ID.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
israel
|
||||
instagram
|
||||
detik
|
||||
whatsapp
|
||||
netflix
|
||||
schweiz
|
||||
jecx
|
||||
74 kg emas berapa rupiah
|
||||
gempa hari ini
|
||||
pusat gempa hari ini
|
||||
boeing 737
|
||||
pemadaman bergilir
|
||||
what
|
||||
france vs morocco world cup 2026
|
||||
zlatan ibrahimovic
|
||||
apakah andra st kecelakaan
|
||||
france vs morocco
|
||||
ketua umum
|
||||
aparatur sipil negara
|
||||
marco materazzi
|
||||
subsidi
|
||||
pengumuman undip
|
||||
onana
|
||||
usa belgia
|
||||
hans vanaken
|
||||
pulisic
|
||||
federasi sepak bola prancis
|
||||
jérémy doku
|
||||
malik tillman
|
||||
sergiño dest
|
||||
raja juli antoni
|
||||
prediksi portugal vs spanyol
|
||||
morgan rogers
|
||||
alireza faghani
|
||||
santiago giménez
|
||||
raúl jiménez
|
||||
spmb banten
|
||||
azteca stadium
|
||||
jesús gallardo
|
||||
bukayo saka
|
||||
ledakan
|
||||
inggris vs meksiko
|
||||
berita
|
||||
suo
|
||||
pildun
|
||||
brazil vs norwegia
|
||||
hasil piala dunia 2026 hari ini
|
||||
eintracht frankfurt
|
||||
francis
|
||||
brave
|
||||
maroko vs kanada
|
||||
prediksi kanada vs maroko
|
||||
jadwal 16 besar piala dunia
|
||||
kolombia ghana
|
||||
richard ríos
|
||||
travis kelce
|
||||
gustavo puerta
|
||||
jhon lucumí
|
||||
david ospina
|
||||
marvin senaya
|
||||
fifa 2026
|
||||
kantor perwakilan bank indonesia tegal
|
||||
polisi
|
||||
manzambi
|
||||
rubén vargas
|
||||
aïssa mandi
|
||||
ramiz zerrouki
|
||||
gregor kobel
|
||||
ibrahim maza
|
||||
bmkg
|
||||
belarus
|
||||
prediksi portugal vs kroasia
|
||||
lodewyk pusung
|
||||
tim ream
|
||||
timothy weah
|
||||
nikola vasilj
|
||||
tarik muharemović
|
||||
mattia liberali
|
||||
matt freese
|
||||
sarah gibson
|
||||
prediksi belgia vs senegal
|
||||
hincapie
|
||||
harga bbm pertamina dex
|
||||
kendry páez
|
||||
edson álvarez
|
||||
england vs dr congo world cup 2026
|
||||
hernán galíndez
|
||||
pedro vite
|
||||
spanyol vs austria
|
||||
nadiem makarim
|
||||
menteri
|
||||
hut bhayangkara 2026
|
||||
marocco
|
||||
summerville
|
||||
wout weghorst
|
||||
belanda fc
|
||||
cody gakpo
|
||||
maroko vs belanda
|
||||
ujian mandiri
|
||||
grand theft auto vi
|
||||
100
data/keywords/kw_IN.txt
Normal file
100
data/keywords/kw_IN.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
இன்ஸ்பெக்டர்
|
||||
voter id
|
||||
supreme court of india
|
||||
udise+
|
||||
ಕರ್ನಾಟಕ
|
||||
manoramaonline
|
||||
wp
|
||||
play store
|
||||
lucho
|
||||
crs
|
||||
chief minister vijay legal challenge
|
||||
kusumgar ipo
|
||||
knack packaging share price
|
||||
vedanta power share price
|
||||
jio finance share price
|
||||
shpageeza cricket league
|
||||
cupid share price
|
||||
vedanta oil and gas share price
|
||||
mcx share price
|
||||
apollo micro systems share price
|
||||
నాగార్జున
|
||||
nothing 4b
|
||||
shivashree ritu singh news
|
||||
trent share price
|
||||
titan share price
|
||||
कर्क
|
||||
હવામાન
|
||||
sir odisha
|
||||
सोना
|
||||
क्रिस्टियानो रोनाल्डो
|
||||
san francisco unicorns vs mi new york standings
|
||||
जनता पार्टी
|
||||
बेंजामिन नेतन्याहू
|
||||
परिणाम
|
||||
இந்திய ரிசர்வ் வங்கி
|
||||
abp maza live
|
||||
अग्निपथ योजना
|
||||
अवकाश
|
||||
रवि बिश्नोई
|
||||
தொல். திருமாவளவன்
|
||||
मानसून
|
||||
राशियाँ
|
||||
தமிழக வெற்றிக் கழகம்
|
||||
ഡോണള്ഡ് ട്രംപ്
|
||||
sri lanka vs west indies
|
||||
श्रीलंका बनाम वेस्टइंडीज
|
||||
washington freedom vs san francisco unicorns
|
||||
royals vs phillies
|
||||
washington freedom vs san francisco unicorns standings
|
||||
త్రిష కృష్ణన్
|
||||
भारत के विदेशी मुद्रा भंडार
|
||||
alpha movie 2026
|
||||
ന്യൂസ്
|
||||
ಆಲಿಯಾ ಭಟ್
|
||||
அனைத்திந்திய அண்ணா திராவிட முன்னேற்றக் கழகம்
|
||||
बारिश
|
||||
जेम्स कोल्स
|
||||
epfo member portal
|
||||
annapurna
|
||||
luis suárez
|
||||
seattle orcas vs mi new york standings
|
||||
12th result 2026
|
||||
10th result 2026
|
||||
ಅಮೃತಧಾರೆ
|
||||
ca foundation result may 2026
|
||||
रूस
|
||||
uan portal
|
||||
epfo
|
||||
vedanta iron and steel share price
|
||||
ceo telangana
|
||||
ಸಂಸತ್ತು
|
||||
अशनूर कौर
|
||||
राजनाथ सिंह
|
||||
कर्मचारी
|
||||
sir 2002 voter list
|
||||
los angeles knight riders vs washington freedom standings
|
||||
गौतम अदाणी
|
||||
जोस बटलर
|
||||
ग्रामीण विकास
|
||||
ldc admit card
|
||||
reliance power share
|
||||
नागरिकता
|
||||
prasad corp partnership news
|
||||
advit jewels share price
|
||||
rites share price
|
||||
knack packaging ipo
|
||||
விலை
|
||||
amo sharks v band-e-amir dragons
|
||||
ಸುದೀಪ್
|
||||
കേരള സര്ക്കാര്
|
||||
ap eamcet results 2026
|
||||
prasad corp monsoon colour news
|
||||
ind vs eng t20
|
||||
sir form
|
||||
rajnath singh resignation congress demand
|
||||
today gold rate in chennai
|
||||
awarapan 2 release date
|
||||
reckless driving
|
||||
awarapan 2
|
||||
साप्ताहिक राशिफल
|
||||
@@ -1,154 +1,100 @@
|
||||
石油
|
||||
ios 26.4 2
|
||||
ポケモンカード
|
||||
シュトゥットガルト 対 フライブルク
|
||||
ドラクエ スマグロ 攻略
|
||||
ipl
|
||||
kick
|
||||
アコム
|
||||
鈴木愛理
|
||||
sox指数
|
||||
村上世彰
|
||||
桐山 照史
|
||||
マラッカ海峡
|
||||
ソニック
|
||||
sbi新生銀行 株価
|
||||
マイクラ
|
||||
川口 春奈
|
||||
サンダー 対 サンズ
|
||||
インフルエンサー
|
||||
サンケイビル
|
||||
岡村隆史
|
||||
上田竜也
|
||||
メタプラネット
|
||||
バルセロナ 対 セルタ
|
||||
三橋くん
|
||||
エルニーニョ
|
||||
バーンリー 対 マンc
|
||||
ボーンマス 対 リーズ u
|
||||
elche vs atlético madrid
|
||||
レバークーゼン 対 バイエルン
|
||||
dior
|
||||
ソシエダ 対 ヘタフェ
|
||||
サイメモリ
|
||||
b リーグ 順位
|
||||
日ハム
|
||||
ナダル
|
||||
失点
|
||||
岩瀬洋志
|
||||
ファイターズ 試合
|
||||
江村美咲
|
||||
宝島社
|
||||
井ノ原 快彦
|
||||
ファイターズ
|
||||
西郷隆盛
|
||||
ボーダー
|
||||
チェルシー
|
||||
関税
|
||||
ブライトン
|
||||
佳子内親王
|
||||
rマドリード 対 アラベス
|
||||
鳥貴族
|
||||
ブライトン 対 チェルシー
|
||||
アシエンダ乗馬学校
|
||||
ngày trái đất
|
||||
加藤小夏
|
||||
町田ゼルビア
|
||||
モンスターハンターシリーズ
|
||||
クリスタル・パレス 対 ウェストハム
|
||||
吉田正尚
|
||||
旭琉會
|
||||
神戸
|
||||
てんちむ
|
||||
浜辺美波
|
||||
デーブ ロバーツ
|
||||
皇治
|
||||
小雪
|
||||
にじさんじデビュー
|
||||
ちゃんよた
|
||||
坂本 花織
|
||||
松山 千春
|
||||
リーグアン
|
||||
伊勢谷友介
|
||||
bayern vs vfb stuttgart
|
||||
chelsea vs man united
|
||||
唐田えりか
|
||||
102回目のプロポーズ
|
||||
デゼルビ
|
||||
アトレティコ 対 ソシエダ
|
||||
チェルシー 対 マンu
|
||||
スパーズ
|
||||
清春
|
||||
ディエゴ・ゴメス
|
||||
ps5
|
||||
ハイウェイ の 堕 天使 興行 収入
|
||||
カブス 対 メッツ
|
||||
dazn
|
||||
サッスオーロ 対 コモ
|
||||
杉咲花
|
||||
町田 対 アル・イテハド
|
||||
家計
|
||||
週末旅の極意
|
||||
北斗の拳
|
||||
qvc
|
||||
小芝風花
|
||||
中井亜美
|
||||
afc u20女子アジアカップ
|
||||
ネオジオ
|
||||
uefaヨーロッパリーグ
|
||||
加藤史帆
|
||||
志田未来
|
||||
伊藤英明
|
||||
島田麻央
|
||||
al-nassr vs al-ettifaq
|
||||
arsenal
|
||||
レアル・マドリード
|
||||
バイエルン
|
||||
abema
|
||||
real madrid
|
||||
lucknow super giants vs royal challengers bengaluru standings
|
||||
bayern vs real madrid
|
||||
給付
|
||||
wowow
|
||||
小泉進次郎
|
||||
政権
|
||||
ミキティ
|
||||
今日のドジャースの結果
|
||||
新名神高速道路
|
||||
わたせせいぞう
|
||||
ピーチ航空
|
||||
山本由伸
|
||||
アレックス・ベシア
|
||||
リバプール
|
||||
champions league
|
||||
アトレティコ 対 バルセロナ
|
||||
オープンワールド
|
||||
atlético madrid vs barcelona
|
||||
松田好花
|
||||
リコール
|
||||
man united vs leeds
|
||||
白鵬翔
|
||||
日本アカデミー賞 最優秀助演男優賞
|
||||
マンu 対 リーズ u
|
||||
サンディスク 株価
|
||||
らじるらじる
|
||||
マクドナルド
|
||||
ロシア
|
||||
広島市
|
||||
ゲイブル・スティーブソン
|
||||
gta6
|
||||
ドラクエウォーク
|
||||
a24
|
||||
カルビー
|
||||
過失
|
||||
中村 敬 斗 サマンサ
|
||||
タイピング
|
||||
ai
|
||||
a
|
||||
人権
|
||||
ゴゴスマ 石井
|
||||
石原環境大臣
|
||||
ジョーダン・ロマノ
|
||||
移籍
|
||||
玉川徹
|
||||
古舘伊知郎
|
||||
ドジャース 対 ロッキーズ 試合 選手データ
|
||||
エバン・フィリップス
|
||||
神谷宗幣
|
||||
鈴木 彩 艶
|
||||
唐沢寿明
|
||||
配当
|
||||
カルチャーショック
|
||||
大関
|
||||
中国人民解放軍海軍
|
||||
愛甲ひかり
|
||||
ドラマ
|
||||
hybe japan
|
||||
summer sonic
|
||||
全東信 破産
|
||||
ウェールズ 公 妃 キャサリン
|
||||
アジアバレーボール連盟
|
||||
伊勢 佳世 鈴木 奈穂子
|
||||
日本国債
|
||||
中国 弾道 ミサイル 日本
|
||||
薬師寺保栄
|
||||
高市早苗
|
||||
塩 貝 発言
|
||||
小瀧望
|
||||
長澤愛羅
|
||||
上沼恵美子
|
||||
給付金
|
||||
日本レコード大賞
|
||||
鹿島アントラーズ
|
||||
福岡県議会
|
||||
ドジャース 大谷
|
||||
皇室 典範 改正 案
|
||||
オリックス 対 西武
|
||||
桐谷健太
|
||||
シバザクラ
|
||||
大谷翔平
|
||||
橋本 愛 フジ テレビ 報道
|
||||
校長
|
||||
中島 翔哉
|
||||
ダノンヒストリー
|
||||
ミゲル・ロハス
|
||||
爆発
|
||||
宮脇 咲良
|
||||
ポケセン
|
||||
副知事
|
||||
ダイバート
|
||||
かけっこ アイドル
|
||||
津波予報
|
||||
電池
|
||||
盛岡市
|
||||
フィギュア
|
||||
暗号資産
|
||||
クマ
|
||||
本田 圭佑 監督
|
||||
日本維新の会
|
||||
新 日本 繊維
|
||||
高見沢 俊彦
|
||||
不登校
|
||||
後期高齢者医療制度
|
||||
バーミヤン
|
||||
宮澤エマ
|
||||
チケプラ
|
||||
横綱
|
||||
宮里美香
|
||||
東京 天気 明日
|
||||
新宿 おすすめ 居酒屋
|
||||
最新のニュース 速報
|
||||
ゴールド 相場 チャート
|
||||
近くの静かなカフェ
|
||||
円安 影響 生活
|
||||
金価格
|
||||
7月5日 地震
|
||||
リコリス・リコイル
|
||||
埼玉新聞
|
||||
dayday.
|
||||
電気自動車
|
||||
鈴木 彩 艶 移籍
|
||||
入場券
|
||||
ちい かわ ココイチ
|
||||
ワールド・ハイビジョン・チャンネル
|
||||
グアム
|
||||
愛子 内親王
|
||||
ガス人間
|
||||
那須塩原市
|
||||
アドマイヤテラ
|
||||
雨
|
||||
エース小吉
|
||||
毎日放送
|
||||
大阪都構想
|
||||
目黒線
|
||||
陸上自衛隊
|
||||
長 友佑 都
|
||||
アフラック 情報漏洩
|
||||
ハロー キティ スリー コインズ
|
||||
新車
|
||||
伊藤浩子編み物
|
||||
ray-ban meta
|
||||
今永昇太
|
||||
バートン 主審
|
||||
パクヒョンギョン
|
||||
|
||||
100
data/keywords/kw_KH.txt
Normal file
100
data/keywords/kw_KH.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
fb
|
||||
andrey santos
|
||||
fifa world cup argentina
|
||||
connor murphy
|
||||
kylian mbappé
|
||||
france vs morocco
|
||||
thời tiết
|
||||
switzerland vs colombia
|
||||
lionel messi
|
||||
fifa world cup 2026™
|
||||
argentina vs egypt
|
||||
usa vs belgium
|
||||
fifa
|
||||
世界杯直播
|
||||
portugal vs spanyol
|
||||
spain vs portugal
|
||||
forex factory
|
||||
portugal vs spain
|
||||
mexico vs england
|
||||
jadwal piala dunia 2026
|
||||
世界杯
|
||||
brazil vs norway
|
||||
f1
|
||||
xoso
|
||||
france vs paraguay
|
||||
morocco vs canada
|
||||
colombia vs ghana
|
||||
argentina vs cape verde
|
||||
australia vs egypt
|
||||
switzerland vs algeria
|
||||
livescore
|
||||
portugal national football team
|
||||
portugal
|
||||
spain vs
|
||||
spain vs austria
|
||||
portugal vs croatia
|
||||
usa vs bosnia and herzegovina
|
||||
belgium vs senegal
|
||||
morocco national football team
|
||||
england vs dr congo
|
||||
ตรวจหวย
|
||||
weather
|
||||
mexico
|
||||
football world cup
|
||||
fifa world cup brackets
|
||||
world cup 2026 schedule
|
||||
mexico vs ecuador
|
||||
fifa world cup games
|
||||
france vs sweden
|
||||
côte d'ivoire vs norway
|
||||
weather tomorrow
|
||||
belanda vs maroko
|
||||
netherlands vs morocco
|
||||
germany vs paraguay
|
||||
fifa world cup 2026
|
||||
japan vs brazil
|
||||
algeria national football team
|
||||
south africa national soccer team
|
||||
brazil vs japan
|
||||
bagan piala dunia fifa 2026
|
||||
fifa world cup 2026 bracket
|
||||
algeria national football team vs austria national football team standings
|
||||
argentina
|
||||
jordan vs argentina
|
||||
portugal vs colombia
|
||||
dr congo vs uzbekistan
|
||||
colombia vs portugal
|
||||
england vs panama
|
||||
croatia vs ghana
|
||||
uruguay national football team vs spain national football team standings
|
||||
egypt vs iran
|
||||
new zealand vs belgium
|
||||
1
|
||||
ការប្រកួតបាល់ទាត់ពិភពលោក fifa ឆ្នាំ 2026
|
||||
cabo verde vs saudi arabia
|
||||
spain vs uruguay
|
||||
uruguay vs spain
|
||||
siri
|
||||
piala dunia
|
||||
ecuador national football team
|
||||
paraguay vs australia
|
||||
türkiye vs usa
|
||||
tunisia vs netherlands
|
||||
japan vs sweden
|
||||
fifa world cup standings
|
||||
mexico national football team
|
||||
google
|
||||
czechia vs mexico
|
||||
south africa vs south korea
|
||||
brazil vs
|
||||
morocco vs haiti
|
||||
brazil vs scotland
|
||||
klasemen piala dunia fifa 2026
|
||||
fifa world cup 2026 standings
|
||||
dr congo national football team
|
||||
iphone
|
||||
colombia vs dr congo
|
||||
panama vs croatia
|
||||
england vs ghana
|
||||
portugal world cup
|
||||
@@ -1,100 +1,100 @@
|
||||
왕다루
|
||||
시그널
|
||||
모하메드 살라
|
||||
공화당
|
||||
윤하정
|
||||
청남대
|
||||
더보이즈
|
||||
노민우
|
||||
서비스나우
|
||||
김민지
|
||||
박해미
|
||||
국가유산청
|
||||
삼성전자 주가
|
||||
두산에너빌리티 주가
|
||||
김성수
|
||||
한국사
|
||||
삼성전기 주가
|
||||
국립중앙박물관
|
||||
대우건설 주가
|
||||
지방 선거
|
||||
서정대학교
|
||||
캔바
|
||||
한국항공우주산업
|
||||
디트로이트 대 올랜도
|
||||
리그 1
|
||||
elche vs atlético madrid
|
||||
알나스르
|
||||
al-nassr vs al ahli
|
||||
10
|
||||
로세니어
|
||||
psg 대 낭트
|
||||
테슬라 실적발표
|
||||
루카스 모우라
|
||||
9950x3d2
|
||||
삼천당 제약 간담회
|
||||
김재윤
|
||||
k리그1 순위
|
||||
유영찬
|
||||
이호연
|
||||
sxmb
|
||||
진
|
||||
문재인
|
||||
생산직
|
||||
강훈식
|
||||
롤
|
||||
cnn
|
||||
리그오브레전드
|
||||
박환희
|
||||
kia 타이거즈
|
||||
단체교섭
|
||||
손예진
|
||||
상속
|
||||
대한광통신
|
||||
전성배
|
||||
전북도민일보
|
||||
게임
|
||||
챗
|
||||
수도권 광역급행철도 c노선
|
||||
재벌x형사 2
|
||||
엔도 와타루
|
||||
대한축구협회
|
||||
뇌물
|
||||
캐시워크 정답
|
||||
개혁신당
|
||||
브래드 피트
|
||||
정우주
|
||||
초복
|
||||
문화일보
|
||||
엔비디아
|
||||
폭염
|
||||
수소
|
||||
서킷브레이커
|
||||
매매
|
||||
팔미도
|
||||
icml
|
||||
전공의
|
||||
기부
|
||||
산사태
|
||||
논쟁
|
||||
광주 군공항
|
||||
박지현
|
||||
카토
|
||||
와우넷
|
||||
지구의 날
|
||||
컴프야
|
||||
차지연
|
||||
크리스털 팰리스 대 웨스트 햄
|
||||
비상계엄
|
||||
연기금
|
||||
배틀그라운드
|
||||
제이홉
|
||||
두산로보틱스
|
||||
부부
|
||||
미노이 우원재
|
||||
danish malewar
|
||||
mi vs gt
|
||||
양치 승
|
||||
프리미어리그
|
||||
pl
|
||||
bundesliga
|
||||
맨체스터 시티 fc
|
||||
fotmob
|
||||
윤아
|
||||
김영인
|
||||
манчестер сити – арсенал
|
||||
케이뱅크
|
||||
날씨
|
||||
환율
|
||||
손흥민
|
||||
토트넘 경기 일정
|
||||
넷플릭스
|
||||
국민은행
|
||||
네이버웹툰
|
||||
로또 당첨번호
|
||||
쿠팡
|
||||
KBO 리그
|
||||
프로야구 순위
|
||||
아이폰 15
|
||||
챗gpt
|
||||
인스타그램
|
||||
유튜브 밴스드
|
||||
이강인
|
||||
김민재
|
||||
LCK 일정
|
||||
T1
|
||||
페이커
|
||||
무빙
|
||||
카카오톡 PC버전
|
||||
당근마켓
|
||||
배달의민족
|
||||
올리브영
|
||||
메이플스토리
|
||||
존 존스
|
||||
박유천
|
||||
임창정
|
||||
돌싱글즈
|
||||
폴란드
|
||||
мексика – англия
|
||||
곰팡이
|
||||
두산 대 키움
|
||||
전소미
|
||||
소진
|
||||
영화
|
||||
벌금
|
||||
민생회복 소비쿠폰
|
||||
린
|
||||
이정효
|
||||
박소영
|
||||
백종원
|
||||
이주승
|
||||
오타니 쇼헤이
|
||||
넥슨
|
||||
톱스타뉴스
|
||||
죽음
|
||||
르브론 제임스
|
||||
장원영
|
||||
나솔
|
||||
장동혁 가족상
|
||||
박지성
|
||||
fourth of july
|
||||
류근
|
||||
배달
|
||||
박서진
|
||||
도로
|
||||
암
|
||||
포스코홀딩스
|
||||
알제리
|
||||
홈 플러스 회생 폐지
|
||||
경찰
|
||||
송해나
|
||||
우성빈
|
||||
고우석
|
||||
비행기
|
||||
황정민
|
||||
은행나무
|
||||
이만기
|
||||
부츠카리
|
||||
이천시
|
||||
왕옌청
|
||||
반도체
|
||||
심정지
|
||||
지명 타자
|
||||
마이클 버리
|
||||
사우디아라비아
|
||||
박미선
|
||||
이마트
|
||||
바둑
|
||||
최형우
|
||||
감동란
|
||||
국민 연금 리 밸런싱
|
||||
윤석열
|
||||
파울루 벤투
|
||||
아침
|
||||
하재훈
|
||||
육아휴직
|
||||
현대자동차그룹
|
||||
꽃
|
||||
고두심
|
||||
지역화폐
|
||||
|
||||
100
data/keywords/kw_LA.txt
Normal file
100
data/keywords/kw_LA.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
bitcoin
|
||||
台风
|
||||
alaskaair
|
||||
rory mcilroy
|
||||
showdown
|
||||
dorothea puente
|
||||
new york times
|
||||
ca lottery
|
||||
mookie betts
|
||||
is mexico and england playing again
|
||||
kospi
|
||||
loans
|
||||
kuwait
|
||||
kyle karros
|
||||
jordan romano
|
||||
auli'i cravalho
|
||||
evan phillips
|
||||
mason miller
|
||||
alex freeland
|
||||
quinten post
|
||||
openai
|
||||
jaswant singh khalra
|
||||
brennan bernardino
|
||||
dodgers
|
||||
dodgers game today
|
||||
rockies
|
||||
dreamdoll
|
||||
new jersey fireboat whale collision
|
||||
dodger game
|
||||
real estate market
|
||||
open world
|
||||
jeremy renner
|
||||
nolan xavier wells
|
||||
ap
|
||||
copa mundial de fútbol
|
||||
seattle seahawks
|
||||
cher
|
||||
sebastian rulli
|
||||
rittman ohio
|
||||
will smith
|
||||
coney island shooting
|
||||
denzel washington
|
||||
flood warning
|
||||
newport beach news
|
||||
waikiki fireworks
|
||||
provo fire
|
||||
seattle fireworks
|
||||
westgate shooting
|
||||
chelan hills fire
|
||||
jaidyn alexis and bravo
|
||||
tanner scott
|
||||
kelsey rowing
|
||||
shohei ohtani
|
||||
vaccines
|
||||
happy 4th of july 2026
|
||||
flu shots
|
||||
immunizations
|
||||
vaccinations
|
||||
sk hynix stock
|
||||
mission impossible
|
||||
gervase dodgers
|
||||
madonna
|
||||
donald trump park signage lawsuit
|
||||
norovirus
|
||||
dakota johnson
|
||||
tommy edman
|
||||
algeria fc
|
||||
mariners standings
|
||||
jonathan kuminga
|
||||
alex scott
|
||||
andres escobar
|
||||
rob lowe
|
||||
rocket launch today
|
||||
dbacks
|
||||
marvin bagley
|
||||
tom hanks
|
||||
diamondbacks
|
||||
lisa kudrow
|
||||
what is july 1st
|
||||
rio ferdinand
|
||||
bovada
|
||||
wyatt mills
|
||||
colombia vs ghana
|
||||
how many more games in the world cup
|
||||
partidos del mundial 2026
|
||||
fargo
|
||||
belgium vs senegal
|
||||
dave roberts
|
||||
kirk franklin philadelphia
|
||||
sandro mamukelashvili
|
||||
walton goggins
|
||||
ivory coast vs norway
|
||||
cole young
|
||||
world cup schedule tomorrow
|
||||
cubs standings
|
||||
world cup games tomorrow
|
||||
northern lights forecast
|
||||
morocco vs canada
|
||||
crude
|
||||
lizzo 2026 bet awards appearance
|
||||
100
data/keywords/kw_MM.txt
Normal file
100
data/keywords/kw_MM.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
andrey santos
|
||||
denmark u19
|
||||
สภาพอากาศ
|
||||
pubg
|
||||
france vs morocco
|
||||
天气
|
||||
fb
|
||||
redmi note 17 pro
|
||||
connor murphy
|
||||
1
|
||||
ig
|
||||
switzerland vs colombia
|
||||
world cup matches
|
||||
argentina
|
||||
fotmob
|
||||
egypt national football team
|
||||
football live
|
||||
fifa world cup 2026™
|
||||
世界杯直播
|
||||
usa vs belgium
|
||||
portugal vs spain live
|
||||
spain vs portugal
|
||||
jarell quansah
|
||||
portugal vs spain
|
||||
mexico vs england
|
||||
世界杯
|
||||
brazil vs norway
|
||||
သတင်း
|
||||
paraguay vs france
|
||||
2026 年 fifa 世界杯
|
||||
canada vs morocco
|
||||
x
|
||||
မြန်မာ
|
||||
telegram
|
||||
instagram
|
||||
play store
|
||||
colombia vs ghana
|
||||
earthquake
|
||||
croatia national football team
|
||||
soccer tv
|
||||
argentina vs cabo verde
|
||||
australia vs egypt
|
||||
အမျိုးသားညီညွတ်ရေး အစိုးရ
|
||||
switzerland vs algeria
|
||||
fifa world cup games
|
||||
portugal
|
||||
fifa world cup brackets
|
||||
portugal vs croatia
|
||||
world cup 2026
|
||||
spain vs austria
|
||||
dr congo national football team
|
||||
usa vs bosnia and herzegovina
|
||||
belgium vs senegal
|
||||
england vs dr congo
|
||||
guo wengui
|
||||
ตรวจหวย
|
||||
หวย
|
||||
mexico vs ecuador world cup 2026
|
||||
mexico vs ecuador
|
||||
france vs sweden
|
||||
côte d'ivoire vs norway
|
||||
queen suthida
|
||||
netherlands vs morocco
|
||||
germany vs paraguay
|
||||
japan vs brazil
|
||||
suthida
|
||||
international criminal court
|
||||
brazil vs japan
|
||||
south africa vs canada
|
||||
fifa world cup 2026 bracket
|
||||
np news
|
||||
ကရင်အမျိုးသား လွတ်မြောက်ရေး တပ်မတော်
|
||||
algeria national football team vs austria national football team standings
|
||||
argentina national football team
|
||||
fifa world cup standings
|
||||
cristiano ronaldo
|
||||
jordan vs argentina
|
||||
dr congo vs uzbekistan
|
||||
colombia vs portugal
|
||||
education
|
||||
egypt vs iran
|
||||
new zealand vs belgium
|
||||
uruguay national football team vs spain national football team standings
|
||||
didier deschamps
|
||||
cabo verde vs saudi arabia
|
||||
uruguay vs spain
|
||||
senegal national football team vs iraq national football team standings
|
||||
norway vs france
|
||||
iphone
|
||||
japan national football team
|
||||
morocco national football team
|
||||
football fifa world cup
|
||||
türkiye vs usa
|
||||
tunisia national football team vs netherlands national football team standings
|
||||
paraguay vs australia
|
||||
japan national football team vs sweden men's national football team standings
|
||||
ဘီဘီစီ
|
||||
curaçao vs côte d'ivoire
|
||||
livescore
|
||||
ecuador vs germany
|
||||
100
data/keywords/kw_MN.txt
Normal file
100
data/keywords/kw_MN.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
bitcoin
|
||||
台风
|
||||
alaskaair
|
||||
rory mcilroy
|
||||
showdown
|
||||
dorothea puente
|
||||
new york times
|
||||
ca lottery
|
||||
mookie betts
|
||||
is mexico and england playing again
|
||||
kospi
|
||||
loans
|
||||
kuwait
|
||||
kyle karros
|
||||
jordan romano
|
||||
auli'i cravalho
|
||||
evan phillips
|
||||
mason miller
|
||||
alex freeland
|
||||
quinten post
|
||||
openai
|
||||
jaswant singh khalra
|
||||
brennan bernardino
|
||||
dodgers
|
||||
dodgers game today
|
||||
rockies
|
||||
dreamdoll
|
||||
new jersey fireboat whale collision
|
||||
dodger game
|
||||
real estate market
|
||||
open world
|
||||
jeremy renner
|
||||
nolan xavier wells
|
||||
ap
|
||||
copa mundial de fútbol
|
||||
seattle seahawks
|
||||
cher
|
||||
sebastian rulli
|
||||
rittman ohio
|
||||
will smith
|
||||
coney island shooting
|
||||
denzel washington
|
||||
flood warning
|
||||
newport beach news
|
||||
waikiki fireworks
|
||||
provo fire
|
||||
seattle fireworks
|
||||
westgate shooting
|
||||
chelan hills fire
|
||||
jaidyn alexis and bravo
|
||||
tanner scott
|
||||
kelsey rowing
|
||||
shohei ohtani
|
||||
vaccines
|
||||
happy 4th of july 2026
|
||||
flu shots
|
||||
immunizations
|
||||
vaccinations
|
||||
sk hynix stock
|
||||
mission impossible
|
||||
madonna
|
||||
paul gervase
|
||||
donald trump park signage lawsuit
|
||||
norovirus
|
||||
dakota johnson
|
||||
tommy edman
|
||||
algeria fc
|
||||
mariners standings
|
||||
jonathan kuminga
|
||||
alex scott
|
||||
andres escobar
|
||||
rob lowe
|
||||
rocket launch today
|
||||
dbacks
|
||||
marvin bagley
|
||||
tom hanks
|
||||
diamondbacks
|
||||
lisa kudrow
|
||||
what is july 1st
|
||||
rio ferdinand
|
||||
bovada
|
||||
wyatt mills
|
||||
colombia vs ghana
|
||||
how many more games in the world cup
|
||||
partidos del mundial 2026
|
||||
fargo
|
||||
belgium vs senegal
|
||||
dave roberts
|
||||
kirk franklin philadelphia
|
||||
sandro mamukelashvili
|
||||
walton goggins
|
||||
ivory coast vs norway
|
||||
cole young
|
||||
world cup schedule tomorrow
|
||||
cubs standings
|
||||
world cup games tomorrow
|
||||
northern lights forecast
|
||||
morocco vs canada
|
||||
crude
|
||||
lizzo 2026 bet awards appearance
|
||||
100
data/keywords/kw_MO.txt
Normal file
100
data/keywords/kw_MO.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
ai
|
||||
芊御價單
|
||||
華 富
|
||||
金子涵
|
||||
司機
|
||||
白石角站
|
||||
star
|
||||
吳亦偉
|
||||
香港01
|
||||
湯洛雯
|
||||
排球
|
||||
國泰航空
|
||||
飛彈
|
||||
朱維德
|
||||
犯罪
|
||||
香港的士
|
||||
羅 雪 妍
|
||||
樂 易 玲
|
||||
酒店
|
||||
溺水
|
||||
九龍華仁中學
|
||||
洪水
|
||||
比寧咸
|
||||
香港 暴雨 警告 信號
|
||||
folarin balogun
|
||||
香港天气
|
||||
usa vs belgium
|
||||
華領醫藥
|
||||
weather
|
||||
天气
|
||||
食用油
|
||||
ib
|
||||
機場
|
||||
黃有龍
|
||||
jordan henderson
|
||||
mexico vs england world cup 2026
|
||||
jarell quansah
|
||||
england mexico
|
||||
墨西哥 對 英格蘭
|
||||
observatory
|
||||
陳松伶
|
||||
薛守智醫生
|
||||
paraguay vs france
|
||||
巴拉圭 對 法國
|
||||
whatsapp
|
||||
france vs paraguay
|
||||
巴西對挪威
|
||||
巴拉圭
|
||||
加拿大對摩洛哥
|
||||
canada vs morocco
|
||||
巴士
|
||||
16 強 賽程 表
|
||||
taylor swift
|
||||
屯 門 官 立 中學
|
||||
尹兆堅
|
||||
墨西哥
|
||||
風
|
||||
sidny lopes cabral
|
||||
colombia vs ghana
|
||||
世界杯赛程
|
||||
安多尼·伊勞拉
|
||||
瑞士足球
|
||||
switzerland vs algeria
|
||||
皇崗口岸
|
||||
百佳超市
|
||||
diogo jota
|
||||
世界杯賽程
|
||||
portugal fc
|
||||
葡萄牙對克羅地亞 直播
|
||||
馬鞍山信義學校
|
||||
曾志偉
|
||||
梁珊
|
||||
日元
|
||||
財務 自由
|
||||
日元兌港元
|
||||
903
|
||||
維德角國家足球隊
|
||||
恆生指數
|
||||
美國
|
||||
郭羨妮
|
||||
一號戒備信號
|
||||
黃錦輝
|
||||
董建華
|
||||
英格蘭對剛果民主共和國
|
||||
宣萱
|
||||
巨無霸餐買一送一
|
||||
kawhi leonard
|
||||
梁芷珮
|
||||
world cup 2026 schedule
|
||||
氣旋
|
||||
失業
|
||||
角球
|
||||
hakimi
|
||||
netherlands
|
||||
cody gakpo
|
||||
荷蘭 對 摩洛哥
|
||||
netherlands vs morocco
|
||||
林凱恩
|
||||
疥瘡
|
||||
低氣壓
|
||||
@@ -1,34 +1,100 @@
|
||||
rayo vallecano vs espanyol
|
||||
dji lito x1
|
||||
levante vs sevilla
|
||||
danish malewar
|
||||
mukesh choudhary
|
||||
lyrid meteor showers
|
||||
jamie overton
|
||||
piala uber
|
||||
madrid open
|
||||
dewald brevis
|
||||
counter strike
|
||||
pistons vs magic
|
||||
real salt lake vs inter miami
|
||||
chart gpt
|
||||
asiago
|
||||
liza hanim
|
||||
good morning
|
||||
pandikar amin mulia
|
||||
勒沃库森 - 拜仁
|
||||
santos vs coritiba
|
||||
Malaysia
|
||||
Kuala Lumpur
|
||||
Bursa Malaysia
|
||||
Ringgit
|
||||
Maybank
|
||||
CIMB
|
||||
Shopee MY
|
||||
Lazada Malaysia
|
||||
KWSP i-Akaun
|
||||
LHDN MyTax
|
||||
Anwar Ibrahim
|
||||
Johor Bahru
|
||||
Penang
|
||||
Nasi Lemak
|
||||
bella astillah
|
||||
airplane crash
|
||||
azmin ali
|
||||
moana
|
||||
ig
|
||||
games
|
||||
tt
|
||||
1
|
||||
cch holdings data centre agreement
|
||||
radio online
|
||||
iran
|
||||
connor murphy
|
||||
kool fm
|
||||
persatuan bola sepak diraja belgium
|
||||
france vs morocco prediction
|
||||
liverpool f.c.
|
||||
pengadil
|
||||
gregor kobel
|
||||
pasukan bola sepak kebangsaan argentina
|
||||
a
|
||||
orang rohingya
|
||||
argentina vs egypt prediction
|
||||
lukaku
|
||||
pulisic
|
||||
tim ream
|
||||
sergiño dest
|
||||
malik tillman
|
||||
kevin de bruyne
|
||||
leandro trossard
|
||||
belgium vs
|
||||
liew chin tong epf savings
|
||||
utusan malaysia
|
||||
usa vs belgium prediction
|
||||
portugal vs spain prediction
|
||||
alireza faghani
|
||||
edson álvarez
|
||||
john stones
|
||||
césar montes
|
||||
julián quiñones
|
||||
érik lira
|
||||
maruah
|
||||
malaysia
|
||||
pasukan bola sepak kebangsaan mexico
|
||||
netflix
|
||||
mayat
|
||||
china
|
||||
whatsapp
|
||||
mexico vs england
|
||||
fifa world cup brackets
|
||||
anom suraya
|
||||
argentina national football team games
|
||||
梅西
|
||||
colombia vs ghana
|
||||
sidny lopes cabral
|
||||
pasukan bola sepak kebangsaan cape verde
|
||||
alexis mac allister
|
||||
cabo verde country
|
||||
ryan mendes
|
||||
australia vs egypt
|
||||
apple iphone 18 pro max
|
||||
granit xhaka
|
||||
riyad mahrez
|
||||
瑞士 - 阿尔及利亚
|
||||
ibrahim maza
|
||||
perubahan iklim
|
||||
portugal vs spain
|
||||
naruto
|
||||
portugal vs croatia prediction
|
||||
livenation
|
||||
spain vs austria prediction
|
||||
福拉林·巴洛贡
|
||||
united states vs bosnia and herzegovina world cup 2026
|
||||
scratch
|
||||
美国 - 波黑
|
||||
canada vs bosnia and herzegovina
|
||||
thibaut courtois
|
||||
uefa
|
||||
timbalan menteri
|
||||
england vs dr congo prediction
|
||||
belgium vs senegal prediction
|
||||
raúl rangel
|
||||
gilberto mora
|
||||
墨西哥 对阵 厄瓜多尔
|
||||
meksiko vs ekuador
|
||||
budi diesel
|
||||
world cup 2026 schedule
|
||||
pencen
|
||||
whatsapp usernames
|
||||
syed saddiq case
|
||||
bart verbruggen
|
||||
fifa ranking 2026
|
||||
holland
|
||||
harga emas hari ini
|
||||
pelakon
|
||||
morocco fc
|
||||
hakimi morocco
|
||||
msi 2026
|
||||
japan vs brazil
|
||||
wong kah woh
|
||||
nubhan
|
||||
|
||||
100
data/keywords/kw_NG.txt
Normal file
100
data/keywords/kw_NG.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
uche ogbodo
|
||||
nans nelfund tuition refund
|
||||
weather
|
||||
punch news
|
||||
open heaven 8 july 2026
|
||||
today prediction
|
||||
iran war
|
||||
cardi b
|
||||
erling haaland
|
||||
parasite outbreak explosive diarrhea
|
||||
xxl
|
||||
argentina vs switzerland
|
||||
vermont green fc vs connecticut rush
|
||||
gregor kobel
|
||||
james rodríguez
|
||||
djokovic
|
||||
lagos government detains 396 beggars
|
||||
f
|
||||
barnet fc
|
||||
colombia vs switzerland
|
||||
leandro trossard
|
||||
switzerland vs colombia
|
||||
malik tillman
|
||||
twitch
|
||||
deportes concepcion vs deportes temuco
|
||||
how many goals does messi have
|
||||
when is argentina next match
|
||||
quarter final fixtures
|
||||
messi age
|
||||
how many goals does ronaldo have
|
||||
bukayo saka
|
||||
morgan rogers
|
||||
raúl jiménez
|
||||
jarell quansah
|
||||
julián quiñones
|
||||
england national football team
|
||||
gilberto mora
|
||||
christian kofane
|
||||
is brazil out of the world cup
|
||||
fifa world cup 2026™
|
||||
france
|
||||
paraguay vs france
|
||||
england vs mexico
|
||||
sporty
|
||||
bbc
|
||||
live score
|
||||
liverpool
|
||||
hakimi
|
||||
azzedine ounahi
|
||||
yesterday match result
|
||||
jordan ayew
|
||||
argentina next match
|
||||
round of 16 fixtures
|
||||
diego simeone
|
||||
cabo verde country
|
||||
sofascore
|
||||
colombia vs ghana
|
||||
sidny lopes cabral
|
||||
sports
|
||||
what
|
||||
world cup 2026 fixtures
|
||||
bbc hausa com
|
||||
spain vs portugal
|
||||
australia vs egypt prediction
|
||||
cristiano ronaldo
|
||||
2027 bmw x5 vs mercedes gle
|
||||
south africa nigerian repatriation
|
||||
portugal vs croatia prediction
|
||||
spain vs austria prediction
|
||||
usa vs bosnia and herzegovina
|
||||
fifa world cup goal scorers
|
||||
trossard
|
||||
22bet
|
||||
senegal match
|
||||
bola ahmed tinubu
|
||||
mory diaw
|
||||
belgium vs senegal
|
||||
bet9ja
|
||||
belgium vs senegal prediction
|
||||
england vs dr congo
|
||||
mexico vs ecuador
|
||||
mbappe age
|
||||
alexander isak
|
||||
france match
|
||||
victor lindelöf
|
||||
economic and financial crimes commission
|
||||
weather today
|
||||
world cup results
|
||||
ivory coast vs norway prediction
|
||||
quinten timber
|
||||
morocco fc
|
||||
cody gakpo
|
||||
whatsapp usernames
|
||||
julio enciso
|
||||
germany vs
|
||||
news
|
||||
bet awards 2026
|
||||
netherlands vs morocco
|
||||
cavalry fc vs fc supra du quebec
|
||||
apple iphone 18 pro max
|
||||
@@ -1,136 +1,100 @@
|
||||
maarten van rossem
|
||||
jake paul
|
||||
financiën
|
||||
zonnepaneel
|
||||
xrp
|
||||
cyprus
|
||||
verdachte
|
||||
112 eerbeek
|
||||
golden earring
|
||||
sergiño dest
|
||||
david wilcock
|
||||
asiago
|
||||
shownieuws
|
||||
nijmegen
|
||||
keira knightley
|
||||
112 meldingen amsterdam
|
||||
dierenmishandeling
|
||||
112 amsterdam
|
||||
freek rikkerink
|
||||
poetin
|
||||
atalanta - lazio
|
||||
mr nobody against putin
|
||||
club brugge - mechelen
|
||||
frank hosmar
|
||||
barcelona - celta
|
||||
kees flodder
|
||||
burnley - manchester city
|
||||
lodewijk asscher
|
||||
vallende sterren
|
||||
guus meeuwis
|
||||
hoofddorp
|
||||
kaja kallas
|
||||
persconferentie
|
||||
online radio
|
||||
demi schuurs
|
||||
wijk aan zee
|
||||
hongaarse omroep staakt uitzendingen
|
||||
ontslag
|
||||
nijmeegse vierdaagse
|
||||
superjacht
|
||||
internationaal monetair fonds
|
||||
vakantie
|
||||
8 juli
|
||||
omroep zeeland
|
||||
koers bitcoin
|
||||
hélène hendriks
|
||||
ryanair
|
||||
politiek
|
||||
stroomstoring amersfoort
|
||||
solvinity digid
|
||||
wout weghorst
|
||||
jamie kames
|
||||
bitvavo
|
||||
box 3
|
||||
ronde van de alpen
|
||||
matthias uhl
|
||||
taken film
|
||||
robot
|
||||
girona - real betis
|
||||
real madryt – deportivo alaves
|
||||
tbilisi
|
||||
southampton - bristol city
|
||||
vittoria guazzini
|
||||
oppo find x9 ultra
|
||||
real madrid - alavés
|
||||
الريال ضد ألافيس
|
||||
lecce - fiorentina
|
||||
pogoda jutro
|
||||
vierhouten
|
||||
weather tomorrow
|
||||
over mijn lijk 2026 overleden
|
||||
crystal palace - west ham
|
||||
f-16 fighting falcon
|
||||
klagenfurt
|
||||
italië
|
||||
ruud gullit
|
||||
perfil falso
|
||||
psg - lyon
|
||||
juventus - bologna
|
||||
troy parrott
|
||||
az - nec opstellingen
|
||||
caroline tensen
|
||||
asielbeleid
|
||||
philippe sandler
|
||||
keerbergen
|
||||
peer koopmeiners
|
||||
nederlands elftal
|
||||
pogoń szczecin – lech poznań
|
||||
stand premier league
|
||||
bulgarije
|
||||
chelsea - man utd
|
||||
atlético madrid - real sociedad
|
||||
xavi simons
|
||||
ayase ueda
|
||||
roma - atalanta
|
||||
rtv noord
|
||||
paraguay
|
||||
sergio herman
|
||||
fed
|
||||
keuken kampioen
|
||||
legia warszawa – zagłębie lubin
|
||||
ripple
|
||||
voorzitter fed
|
||||
bahamas
|
||||
overtreding
|
||||
almere city
|
||||
real betis
|
||||
sean connery
|
||||
l1 nieuws
|
||||
ronaldinho
|
||||
demi de boer
|
||||
bondgenoten
|
||||
frank masmeijer
|
||||
real betis - braga
|
||||
ethereum
|
||||
aston villa - bologna
|
||||
manuel neuer
|
||||
neuer
|
||||
olise
|
||||
mbappe
|
||||
sporting
|
||||
live tv
|
||||
bayern munchen
|
||||
arda güler
|
||||
ziggo
|
||||
arda guler
|
||||
netflix
|
||||
frenkie de jong
|
||||
kanye west
|
||||
vandaag inside
|
||||
at5
|
||||
veroordeling
|
||||
verenigde staten
|
||||
alec baldwin
|
||||
anna paulowna
|
||||
şampiyonlar ligi
|
||||
NOS Nieuws
|
||||
Buienradar
|
||||
Rijksoverheid
|
||||
Albert Heijn
|
||||
Funda
|
||||
Marktplaats
|
||||
KLM
|
||||
Ziggo
|
||||
ING Bank
|
||||
Eredivisie
|
||||
Amsterdam Weer
|
||||
Bol.com
|
||||
Treinkaartjes NS
|
||||
PostNL
|
||||
Pathé
|
||||
peter faber
|
||||
gianni infantino
|
||||
saibari blessure
|
||||
u2
|
||||
verdachte
|
||||
klaus schwab
|
||||
heat wave
|
||||
erfbelasting
|
||||
trump
|
||||
lukaku
|
||||
onana
|
||||
pulisic
|
||||
kevin de bruyne
|
||||
twitch
|
||||
voorspelling
|
||||
a20 afgesloten
|
||||
mona keijzer
|
||||
married at first sight televisieprogramma
|
||||
abdellah ouazane
|
||||
kylie minogue
|
||||
ahmetcan kaplan
|
||||
perpignan
|
||||
frank en rogier
|
||||
weersverwachting
|
||||
boete
|
||||
frans timmermans
|
||||
crypto insiders
|
||||
favorieten etappe 2 tour de france 2026
|
||||
pensioen
|
||||
woudenberg
|
||||
brazilie noorwegen
|
||||
videoland
|
||||
politie
|
||||
pierre gasly
|
||||
koninklijke familie
|
||||
brand sneek
|
||||
schaatser
|
||||
iptv
|
||||
jutta leerdam
|
||||
stikstof
|
||||
reinier van zutphen
|
||||
capgemini
|
||||
travis kelce
|
||||
colombia
|
||||
bram krikke mens health
|
||||
kro ncrv binnenstebuiten
|
||||
patrick bruel
|
||||
verslaving
|
||||
sem verbeek
|
||||
madonna
|
||||
disney+
|
||||
hittegolf
|
||||
jake paul
|
||||
woningmarkt koelt af
|
||||
tim hofman
|
||||
luchtaanval
|
||||
toeslagenaffaire
|
||||
trein
|
||||
steven brunswijk
|
||||
goede tijden slechte tijden rex martin
|
||||
moedermelk pfas
|
||||
bosbranden frankrijk
|
||||
tour de france 2026
|
||||
sébastien desabre
|
||||
b&b vol liefde
|
||||
sandy schreur
|
||||
couhaib driouech
|
||||
io interactive
|
||||
rassemblement national
|
||||
werkvloer
|
||||
rotsboog malta ingestort
|
||||
metro
|
||||
bmw ix5 neue klasse
|
||||
algemeen dagblad
|
||||
benzine duitsland
|
||||
kraken
|
||||
zoon
|
||||
kissing elephants arch
|
||||
frankrijk zweden
|
||||
rijnmond nieuws
|
||||
electric forest festival
|
||||
olanda marocco
|
||||
oorlog oekraïne
|
||||
zaamslag
|
||||
|
||||
100
data/keywords/kw_NP.txt
Normal file
100
data/keywords/kw_NP.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
ratopati
|
||||
yesterday world cup match
|
||||
मौसम
|
||||
norway vs england
|
||||
फिफा
|
||||
setopati
|
||||
morocco vs france
|
||||
onlinekhabar
|
||||
shapoor zadran
|
||||
connor murphy
|
||||
luis suárez
|
||||
james rodríguez
|
||||
switzerland vs colombia
|
||||
france vs morocco
|
||||
world cup 2026 schedule
|
||||
enzo fernández
|
||||
haissem hassan
|
||||
cristian romero
|
||||
mostafa shobeir
|
||||
folarin balogun
|
||||
usa vs belgium
|
||||
ronaldo
|
||||
bernardo silva
|
||||
bruno fernandes
|
||||
nuno mendes
|
||||
sportytv
|
||||
spain vs portugal
|
||||
diogo costa
|
||||
unai simón
|
||||
raúl jiménez
|
||||
jarell quansah
|
||||
julián quiñones
|
||||
eng vs mexico
|
||||
fifa world cup brackets
|
||||
portugal vs spain
|
||||
mexico vs england
|
||||
neymar jr
|
||||
world cup top scorer 2026
|
||||
neymar
|
||||
instagram
|
||||
paraguay vs france
|
||||
achraf hakimi
|
||||
morocco vs canada
|
||||
ismael saibari
|
||||
jacob bethell
|
||||
tom banton
|
||||
phil salt
|
||||
whatsapp usernames
|
||||
emiliano martínez
|
||||
deroy duarte
|
||||
colombia vs ghana
|
||||
lisandro martínez
|
||||
vozinha
|
||||
argentina vs cabo verde
|
||||
lahiru udara
|
||||
alpha movie alia bhatt
|
||||
switzerland vs algeria
|
||||
jota
|
||||
lamine yamal
|
||||
álex baena
|
||||
mikel oyarzabal
|
||||
spain vs
|
||||
england vs south africa
|
||||
croatia national football team
|
||||
spain vs austria
|
||||
skip
|
||||
portugal vs croatia
|
||||
usa vs bosnia and herzegovina
|
||||
tiktok
|
||||
belgium vs senegal
|
||||
vinícius júnior
|
||||
anthony gordon
|
||||
shreyas iyer
|
||||
jordan pickford
|
||||
gilberto mora
|
||||
brazil vs norway
|
||||
world cup matches
|
||||
mexico vs ecuador
|
||||
mexico vs ecuador prediction
|
||||
cabo verde national football team
|
||||
france
|
||||
guo wengui
|
||||
petrol price in nepal today
|
||||
fifa ranking 2026
|
||||
cody gakpo
|
||||
new zealand vs england
|
||||
netherlands vs morocco
|
||||
brazil next match
|
||||
fifa world cup 2026™
|
||||
germany vs paraguay
|
||||
danilo
|
||||
weather forecast
|
||||
weather today
|
||||
weather
|
||||
south africa vs canada
|
||||
brazil vs japan
|
||||
granit xhaka
|
||||
renuka singh
|
||||
weather tomorrow
|
||||
sanju samson
|
||||
100
data/keywords/kw_PH.txt
Normal file
100
data/keywords/kw_PH.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
bryan johnson autoimmune disease
|
||||
f
|
||||
t
|
||||
openai
|
||||
m
|
||||
martina navratilova
|
||||
nba trade rumors lakers
|
||||
fb
|
||||
gian mamuyac
|
||||
dodgers vs rockies
|
||||
connor murphy
|
||||
pag-ibig home loan cap
|
||||
rain
|
||||
mercury vs sky
|
||||
khris middleton
|
||||
liberty vs wings
|
||||
novak djokovic
|
||||
fifa world cup brackets
|
||||
news
|
||||
philippine area of responsibility
|
||||
sparks vs storm
|
||||
lynx vs sun
|
||||
emergency evacuation
|
||||
mystics vs valkyries
|
||||
mikel merino
|
||||
usa vs belgium
|
||||
portugal
|
||||
fifa
|
||||
top
|
||||
gcash
|
||||
plunder
|
||||
marcoleta
|
||||
mariana islands
|
||||
aces vs fever
|
||||
portugal vs spain
|
||||
mexico vs england
|
||||
world cup schedule
|
||||
fifa world cup 2026™
|
||||
pagasa bavi tracking and updates
|
||||
dodgers vs padres
|
||||
storm vs fire
|
||||
paraguay vs france
|
||||
pinay
|
||||
telegram
|
||||
i
|
||||
dream vs valkyries
|
||||
canada vs morocco
|
||||
fiba basketball world cup
|
||||
bronny james
|
||||
summer league nba
|
||||
aces vs sky
|
||||
usa vs dominican republic basketball
|
||||
adam sandler
|
||||
lisandro martínez
|
||||
argentina world cup
|
||||
gilas vs new zealand schedule
|
||||
nba trades lakers
|
||||
catholic church
|
||||
mario kart world update
|
||||
switzerland vs algeria
|
||||
mercury vs storm
|
||||
rabies bats
|
||||
diogo jota
|
||||
fifa world cup
|
||||
inc rally road closures manila
|
||||
super typhoon philippines
|
||||
bat rabies death
|
||||
ios update
|
||||
skarlent rodriguez
|
||||
emi aramaki
|
||||
melvin matibag
|
||||
storm
|
||||
athletics vs dodgers
|
||||
usa vs bosnia and herzegovina
|
||||
bir box sara duterte impeachment
|
||||
balik ginhawa expanded program
|
||||
pagasa henry weather bulletin
|
||||
love and deepspace valko cancelled
|
||||
luke kennard
|
||||
elliot page
|
||||
mexico vs ecuador
|
||||
sabrina ionescu
|
||||
jackie young
|
||||
ios 26.5 2 update
|
||||
bpi instapay pesonet
|
||||
minimum wage manila
|
||||
minimum wage metro manila
|
||||
teacher nabbed
|
||||
nabbed
|
||||
june 30 2026 class suspensions
|
||||
tax
|
||||
fuel price june 30 2026
|
||||
netherlands vs morocco
|
||||
philippine fuel price june 30
|
||||
house prosecution team new lawyers
|
||||
weather forecast
|
||||
low-pressure area
|
||||
full moon strawberry moon
|
||||
winter storm warning
|
||||
valkyries vs liberty
|
||||
100
data/keywords/kw_SA.txt
Normal file
100
data/keywords/kw_SA.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
اخبار
|
||||
واتساب
|
||||
whatsapp
|
||||
طقس العرب
|
||||
إيمان وحيد سيف
|
||||
iran war
|
||||
عبد الصمد الزلزولي
|
||||
جيسوس
|
||||
apple iphone 18 pro max
|
||||
بلوشستان
|
||||
columbia
|
||||
ويمبلدون
|
||||
wimbledon
|
||||
هدف الارجنتين الثالث
|
||||
k2 airways
|
||||
luis suárez
|
||||
جيزان
|
||||
icc
|
||||
إنفانتينو
|
||||
james rodríguez
|
||||
وزارة الدفاع تقديم
|
||||
البرازيل ضد مصر
|
||||
malik tillman
|
||||
فولارين بالوغون
|
||||
folarin balogun
|
||||
openai
|
||||
راكان كعبي
|
||||
الولايات المتحدة ضد بلجيكا
|
||||
إرهاب
|
||||
ريال مدريد
|
||||
zim vs ban
|
||||
تجنيد
|
||||
raúl jiménez
|
||||
mexico national football team vs england national football team lineups
|
||||
jarell quansah
|
||||
جاريل كوانساه
|
||||
هاري كين
|
||||
neymar jr
|
||||
meksiko vs inggris
|
||||
gilberto mora
|
||||
cloud ai
|
||||
americano
|
||||
فرنسا والمغرب
|
||||
ثعبان
|
||||
عقد
|
||||
sri lanka vs west indies
|
||||
نادي الهلال
|
||||
crunchyroll
|
||||
conan
|
||||
france vs paraguay
|
||||
hava durumu
|
||||
world cup 2026 schedule
|
||||
كولومبيا ضد غانا
|
||||
fifa world cup 2026™
|
||||
colombia vs ghana
|
||||
taylor swift
|
||||
فوزينها
|
||||
deroy duarte
|
||||
argentine – cap-vert
|
||||
emiliano martínez
|
||||
whatsapp usernames
|
||||
رياض محرز
|
||||
suisse – algérie
|
||||
الجزائر والنمسا
|
||||
76
|
||||
portugal vs spain
|
||||
switzerland vs algeria
|
||||
إل نينيو
|
||||
اسبانيا والبرتغال
|
||||
شات جي بي
|
||||
وزارة الموارد البشرية والتنمية الاجتماعية
|
||||
الفنانه هبة مجدي
|
||||
عباس عراقجي
|
||||
usa vs bosnia and herzegovina
|
||||
الولايات المتحدة ضد البوسنة والهرسك
|
||||
البرتغال وكرواتيا
|
||||
مكة
|
||||
كورتوا
|
||||
مروحية
|
||||
سعر الغاز اليوم
|
||||
mexico national football team
|
||||
المكسيك ضد الإكوادور
|
||||
mexico vs ecuador
|
||||
نواف بن محمد
|
||||
ثيو هيرنانديز
|
||||
هداف كأس العالم 2026
|
||||
هدافين كاس العالم 2026
|
||||
ريان شرقي
|
||||
جدول مباريات كأس العالم 2026
|
||||
كاس العالم ٢٠٢٦
|
||||
مباراة المغرب القادمة
|
||||
مباريات كاس العالم
|
||||
أشرف حكيمي
|
||||
بونو
|
||||
بث مباشر
|
||||
belanda vs maroko
|
||||
achraf hakimi
|
||||
brahim díaz
|
||||
سعر الدولار اليوم
|
||||
مسلسل house of the dragon الموسم الثالث
|
||||
@@ -1,159 +1,100 @@
|
||||
darren wang
|
||||
mukesh choudhary
|
||||
danish malewar
|
||||
tamil nadu election results
|
||||
allah ghazanfar
|
||||
peregrine falcon
|
||||
airasia flight
|
||||
arrest
|
||||
hao mart singapore
|
||||
kartik sharma
|
||||
real salt lake vs inter miami
|
||||
pistons vs magic
|
||||
krisflyer
|
||||
michael jackson biopic
|
||||
新加坡
|
||||
atalanta vs lazio
|
||||
伯恩利 - 曼城
|
||||
porto vs sporting
|
||||
cdl directors resign millennium copthorne
|
||||
tsla
|
||||
leverkusen vs bayern
|
||||
burnley vs man city
|
||||
elche vs atlético madrid
|
||||
psg vs nantes
|
||||
michael jackson
|
||||
al-nassr vs al ahli
|
||||
mohsin khan
|
||||
changi
|
||||
rr vs lsg
|
||||
primary school
|
||||
alexandra eala
|
||||
tan su shan
|
||||
sundaresh menon
|
||||
moulin rouge musical singapore
|
||||
south korea
|
||||
step
|
||||
gamba osaka vs avispa fukuoka
|
||||
honor 600 pro
|
||||
china shipyards oil tanker orders
|
||||
coe
|
||||
lebron james
|
||||
real madrid vs alavés
|
||||
brighton vs chelsea
|
||||
nitish rana
|
||||
earth day
|
||||
michael movie
|
||||
kevin warsh
|
||||
srh vs dc
|
||||
chinese aircraft carrier liaoning
|
||||
andie chen
|
||||
jesseca liu wins best actress
|
||||
crystal palace vs west ham
|
||||
grok
|
||||
gemini
|
||||
claude ai
|
||||
gpt
|
||||
ai
|
||||
is chatgpt down
|
||||
strait of hormuz news
|
||||
mi vs gt
|
||||
psg vs lyon
|
||||
sporting vs benfica
|
||||
bayern munich
|
||||
pl
|
||||
bangkok weather
|
||||
starhub
|
||||
廖子妤
|
||||
曼城 - 阿森纳
|
||||
bayern vs vfb stuttgart
|
||||
英超
|
||||
chelsea vs man united
|
||||
perfect crown
|
||||
ayush mhatre
|
||||
sarfaraz khan
|
||||
napoli vs lazio
|
||||
tottenham vs brighton
|
||||
abhishek sharma
|
||||
tinie tempah
|
||||
wrexham vs stoke city
|
||||
sassuolo vs como
|
||||
the straits times
|
||||
india women vs south africa women
|
||||
beef season 2
|
||||
loyang valley
|
||||
world cup 2026
|
||||
afc champions league
|
||||
hormuz
|
||||
malacca strait
|
||||
kkr vs gt
|
||||
aston villa vs bologna
|
||||
mumbai indians vs punjab kings standings
|
||||
al sadd vs vissel kobe
|
||||
amd share price
|
||||
opus 4.7
|
||||
pete hegseth
|
||||
naman dhir
|
||||
yen singapore dollar
|
||||
mayank rawat
|
||||
dji pocket 4
|
||||
real madrid
|
||||
al-nassr vs al-ettifaq
|
||||
bayern vs real madrid
|
||||
arsenal vs sporting
|
||||
lucknow super giants vs royal challengers bengaluru standings
|
||||
is claude down
|
||||
claude
|
||||
allbirds
|
||||
red sea
|
||||
rcb vs lsg
|
||||
retirement
|
||||
asia flights delays cancellations
|
||||
suns vs trail blazers
|
||||
johnny somali
|
||||
bam adebayo
|
||||
zhang linghe pursuit of jade
|
||||
roman gofman
|
||||
cruz azul vs lafc
|
||||
ocbc
|
||||
santos vs recoleta
|
||||
atlético madrid vs barcelona
|
||||
ipl schedule
|
||||
liverpool vs psg
|
||||
iran blockade strait of hormuz
|
||||
kartik tyagi
|
||||
carlos alcaraz
|
||||
propertylimbrothers
|
||||
byeon woo-seok
|
||||
mahathir mohamad
|
||||
csk vs kkr
|
||||
man united vs leeds
|
||||
cbse class 10 result 2026 date
|
||||
euphoria season 3
|
||||
srh vs rr
|
||||
tamil new year 2026
|
||||
low de wei
|
||||
pope
|
||||
flexar
|
||||
microsoft outlook
|
||||
new rolex 2026
|
||||
medical classification
|
||||
blasphemy law
|
||||
big bang coachella 2026
|
||||
小贩
|
||||
malaysia fuel price crisis
|
||||
sbti personality test
|
||||
cancer survivor
|
||||
tim cook
|
||||
spurs vs nuggets
|
||||
asia flights cancelled delayed
|
||||
singapore weather forecast
|
||||
mrt map singapore
|
||||
straitstimes breaking news
|
||||
cpf board login
|
||||
hdb bto launch updates
|
||||
best chicken rice near me
|
||||
public holidays sg
|
||||
singpass login portal
|
||||
changi airport flight status
|
||||
iras tax filing
|
||||
airline
|
||||
补贴
|
||||
straits times index bank stocks
|
||||
donald trump
|
||||
caning
|
||||
woodlands checkpoint
|
||||
yusof haslam
|
||||
dow jones
|
||||
connor murphy
|
||||
apple iphone 18 pro max
|
||||
joshua wong
|
||||
singapore weather
|
||||
lips
|
||||
ronaldo world cup exit
|
||||
norway vs england
|
||||
fifa
|
||||
domestic worker
|
||||
fifa world cup 2026™
|
||||
world cup results
|
||||
luis suárez
|
||||
driving
|
||||
jackie chan pei chun
|
||||
switzerland vs colombia prediction
|
||||
hans vanaken
|
||||
alan wei zhaolun
|
||||
malik tillman
|
||||
kevin de bruyne
|
||||
amadou onana
|
||||
circle line
|
||||
美国 - 比利时
|
||||
jordan henderson
|
||||
usa vs belgium prediction
|
||||
morgan rogers
|
||||
team strong silvers member passed
|
||||
mexico national football team vs england national football team lineups
|
||||
julián quiñones
|
||||
raúl jiménez
|
||||
jarell quansah
|
||||
墨西哥 - 英格兰
|
||||
molly tea
|
||||
逮捕
|
||||
passport
|
||||
iphone 17 pro
|
||||
sri lanka vs west indies
|
||||
mexico vs england prediction
|
||||
brazil vs norway
|
||||
fifa world cup brackets
|
||||
paraguay vs france
|
||||
ismael saibari
|
||||
saibari
|
||||
canada vs morocco prediction
|
||||
electric vehicle
|
||||
sidny lopes cabral
|
||||
lisandro martínez
|
||||
taylor swift
|
||||
deroy duarte
|
||||
scoot
|
||||
greater sentosa master plan
|
||||
colombia vs ghana prediction
|
||||
australia vs egypt prediction
|
||||
eminent frog porridge
|
||||
luca zidane
|
||||
parental leave
|
||||
switzerland vs algeria
|
||||
portugal vs spain
|
||||
tree
|
||||
世界杯直播
|
||||
golden village
|
||||
spain vs austria prediction
|
||||
news
|
||||
rabies
|
||||
usa vs bosnia and herzegovina
|
||||
sia air india investment
|
||||
melvin lim propertylimbrothers role
|
||||
actor xu peng career change
|
||||
walker kessler
|
||||
ismaïla sarr
|
||||
england vs dr congo prediction
|
||||
piero hincapié
|
||||
tampines
|
||||
golden village plaza singapura closure
|
||||
gilberto mora
|
||||
smrt trains police report
|
||||
booklet
|
||||
casablanca
|
||||
mexico vs ecuador
|
||||
games
|
||||
hdb u-save july rebate 2026
|
||||
backpack
|
||||
ivory coast vs norway prediction
|
||||
france vs sweden prediction
|
||||
quinten timber
|
||||
fotmob
|
||||
guo wengui
|
||||
cody gakpo
|
||||
荷兰 - 摩洛哥
|
||||
blue chip
|
||||
mothership
|
||||
stephen eustáquio
|
||||
manchester united f.c.
|
||||
|
||||
100
data/keywords/kw_TH.txt
Normal file
100
data/keywords/kw_TH.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
kapook
|
||||
ข่าววันนี้
|
||||
fb
|
||||
erling haaland
|
||||
เกรียง กัลป์ตินันท์
|
||||
teams
|
||||
แมนยู
|
||||
ติ๊กต๊อก
|
||||
game
|
||||
เมียหลวงที่นอนสีชมพู
|
||||
vnl
|
||||
อัครกิตติ์ วรโรจน์เจริญเดช
|
||||
กสศ
|
||||
ฟุตบอล โลก รอบ 8 ทีม สุดท้าย
|
||||
กอรมนคือ
|
||||
england vs india
|
||||
fifa world cup brackets
|
||||
สวัสดิการ
|
||||
วอลเลย์บอล หญิง u18
|
||||
switzerland vs colombia
|
||||
ลาว
|
||||
portugal vs spain
|
||||
สหรัฐอเมริกา พบ เบลเยียม
|
||||
usa vs belgium
|
||||
กรมอุตุนิยมวิทยา
|
||||
คริสเตียโน โรนัลโด
|
||||
fifa
|
||||
portugal
|
||||
世界杯
|
||||
ทุเรียน
|
||||
ดอกเบี้ย
|
||||
jarell quansah
|
||||
england mexico
|
||||
เม็กซิโก พบ อังกฤษ
|
||||
mexico vs england
|
||||
ตารางบอลโลก
|
||||
livescore
|
||||
fifa world cup 2026™
|
||||
ดูบอลสด วันนี้
|
||||
ปารากวัย พบ ฝรั่งเศส
|
||||
paraguay vs france
|
||||
ดูบอลโลก
|
||||
ดูบอลสด
|
||||
morocco
|
||||
โมร็อกโก
|
||||
แคนาดา พบ โมร็อกโก
|
||||
incendies
|
||||
ดูหนัง
|
||||
ind vs eng
|
||||
มรดก
|
||||
กยศ
|
||||
โคลอมเบียบอล
|
||||
ลิโอเนล เมสซิ
|
||||
vozinha
|
||||
cape verde
|
||||
ดูบอล
|
||||
จักรภพ เพ็ญแข
|
||||
สวิตเซอร์แลนด์ พบ แอลจีเรีย
|
||||
scratch
|
||||
portugal fc
|
||||
โปรตุเกสบอลโลก
|
||||
world cup
|
||||
ลิงค์ดูบอลสด
|
||||
soccer tv
|
||||
กัมพูชา
|
||||
สหรัฐอเมริกา
|
||||
usa vs bosnia and herzegovina
|
||||
คารีสา สปริงเก็ตต์
|
||||
สหรัฐอเมริกา พบ บอสเนียและเฮอร์เซโกวีนา
|
||||
ตระกูลภิรมย์ภักดี
|
||||
belgium vs senegal
|
||||
เบลเยียม พบ เซเนกัล
|
||||
สถิติสำหรับ ฟุตบอลโลก
|
||||
หวยออมสินออกกี่โมง
|
||||
เดือน
|
||||
mexico vs ecuador
|
||||
วันหยุดธนาคาร 2569
|
||||
เม็กซิโก พบ เอกวาดอร์
|
||||
ว่างงาน
|
||||
ไทยช่วยไทยพลัส
|
||||
สีมงคลวันนี้
|
||||
ผลบอลเมื่อคืน
|
||||
ผลบอลโลกล่าสุด 2026
|
||||
น้ำ
|
||||
code cookie run classic
|
||||
ภาษี
|
||||
netherlands
|
||||
เนเธอร์แลนด์
|
||||
netherlands vs morocco
|
||||
สภาพอากาศ
|
||||
deutschland – paraguay
|
||||
ฝน
|
||||
ประกันสังคม
|
||||
กรกฎาคม
|
||||
ลำไย ไหทองคำ
|
||||
สถิติ หวย ออก วัน พุธ
|
||||
แคนาดาบอล
|
||||
south africa vs canada
|
||||
f1 live
|
||||
fifa world cup 2026 bracket
|
||||
100
data/keywords/kw_TR.txt
Normal file
100
data/keywords/kw_TR.txt
Normal file
@@ -0,0 +1,100 @@
|
||||
ekonomi
|
||||
ebys
|
||||
vakıfbank
|
||||
ensonhaber
|
||||
bloomberg
|
||||
merkez bankası
|
||||
hitap
|
||||
memurlar net
|
||||
teb
|
||||
ekşi
|
||||
togg
|
||||
sermaye artırımı
|
||||
galatasaray
|
||||
ispanya hükûmeti
|
||||
çeyrek final maçları
|
||||
altın
|
||||
trt spor yıldız
|
||||
türkiye polonya voleybol maçı
|
||||
trt spor yıldız canlı
|
||||
iflas
|
||||
iniş
|
||||
ronaldo futbolu bıraktı mı
|
||||
habertürk canlı
|
||||
cnn canlı
|
||||
merdan yanardağ
|
||||
yatırımcı
|
||||
çirkin
|
||||
wm 2026
|
||||
ak parti
|
||||
giresun hava durumu
|
||||
birgün
|
||||
füze
|
||||
lgs sonuçları
|
||||
ingrid alexandra
|
||||
fib haber
|
||||
osmanlı imparatorluğu
|
||||
dünya kupası çeyrek final maçları
|
||||
milletvekili
|
||||
gözaltı
|
||||
ankara nato zirvesi hangi yollar kapalı
|
||||
şampiyon
|
||||
almanya için alternatif
|
||||
akademisyen
|
||||
france vs paraguay
|
||||
paraguay – frankreich
|
||||
haber61
|
||||
düzce
|
||||
rahmi koç
|
||||
n'golo kanté
|
||||
konser
|
||||
iyi parti
|
||||
paul onuachu
|
||||
esenler erokspor
|
||||
tesla
|
||||
gıda
|
||||
hava durumu
|
||||
weather
|
||||
погода
|
||||
آبوهوا
|
||||
jhon arias
|
||||
enflasyon ne zaman açıklanacak
|
||||
stanley
|
||||
yasin ramazan başaran
|
||||
yeni parti
|
||||
kolesterol
|
||||
mgm
|
||||
toz pembe
|
||||
bilsem mülakat sonuçları 2026
|
||||
sendika
|
||||
donanımhaber
|
||||
nato zirvesi ne zaman
|
||||
kamuran inselel kimdir
|
||||
temmuz ayı kira artiş oranı 2026
|
||||
lee jae myung
|
||||
yeşil burun adaları cumhurbaşkanı
|
||||
güneş
|
||||
sermaye piyasası kurulu
|
||||
giriş/çıkış sistemi
|
||||
yunanistan
|
||||
fiat egea
|
||||
halka arz
|
||||
asgari ücret 2026
|
||||
şırnak üniversitesi
|
||||
1 temmuz denizcilik ve kabotaj bayramı
|
||||
malatya haber
|
||||
mevzuat
|
||||
otoyol ücretleri
|
||||
savcı
|
||||
a101 aktüel
|
||||
dolandırıcılık
|
||||
anayasa mahkemesi
|
||||
ata köprüsü
|
||||
ali çağatay
|
||||
liselere geçiş sistemi
|
||||
brynton lemar
|
||||
gümüş
|
||||
önerge
|
||||
ahmet nazif zorlu
|
||||
virgil van dijk
|
||||
vladimir putin
|
||||
@@ -1,114 +1,100 @@
|
||||
宋祖兒
|
||||
porter
|
||||
謝京穎
|
||||
德州儀器
|
||||
台新綜合證券
|
||||
希臘
|
||||
費城半導體
|
||||
mrvl
|
||||
狄鶯
|
||||
三星罷工
|
||||
00981a
|
||||
馬斯克
|
||||
辛耘
|
||||
宏碁股價
|
||||
0056
|
||||
2330
|
||||
雷霆 對 太陽
|
||||
0050股價
|
||||
006208
|
||||
景碩
|
||||
女警陳芊雯
|
||||
廢死聯盟
|
||||
西甲
|
||||
地震
|
||||
地震速報
|
||||
台灣積體電路製造
|
||||
高頻寬 記憶 體
|
||||
戴奧辛
|
||||
3665
|
||||
宋晟睿
|
||||
黃 甘霖
|
||||
劉家翔
|
||||
王耿豪
|
||||
王勝偉
|
||||
009816
|
||||
thời tiết ngày mai
|
||||
明天的天氣
|
||||
總部
|
||||
美光科技
|
||||
cpbl
|
||||
中華職棒
|
||||
中職
|
||||
黃甘霖
|
||||
軍 公教
|
||||
6147
|
||||
earth day
|
||||
陳哲遠
|
||||
台鐵
|
||||
斯普拉遁 塗擊隊
|
||||
麥可傑克森
|
||||
神將彩券行
|
||||
米可白
|
||||
洪敬堯
|
||||
華邦電子
|
||||
柔美的細胞小將 3
|
||||
底特律老虎
|
||||
三 商 美邦
|
||||
川 普
|
||||
英雄聯盟
|
||||
聯電adr
|
||||
rklb
|
||||
amd stock
|
||||
宋仲基
|
||||
兵工廠
|
||||
德甲
|
||||
塞爾提克 對 76人
|
||||
justin bieber 演唱會
|
||||
拜仁慕尼黑
|
||||
何潤東
|
||||
廖子妤
|
||||
英超
|
||||
許凱
|
||||
tottenham vs brighton
|
||||
長野縣
|
||||
交通安全
|
||||
朋友收集夢想生活
|
||||
麥克傑克森
|
||||
王濛
|
||||
騎士 對 暴龍
|
||||
熱刺 對 布萊頓
|
||||
iem rio 2026
|
||||
garret anderson
|
||||
墓乃伊
|
||||
曹格
|
||||
claude design
|
||||
柯文哲
|
||||
金剛
|
||||
荷 姆 茲 海峽
|
||||
東北 季風
|
||||
斯圖加特公開賽
|
||||
歐聯
|
||||
菡生婦幼診所
|
||||
台鐵訂票
|
||||
飛機
|
||||
東光路
|
||||
货币
|
||||
amd
|
||||
航空母艦
|
||||
axti
|
||||
Yahoo奇摩
|
||||
天氣
|
||||
蝦皮購物
|
||||
PChome
|
||||
Momo購物網
|
||||
Mobile01
|
||||
Dcard
|
||||
巴哈姆特
|
||||
中時電子報
|
||||
聯合新聞網
|
||||
台灣高鐵
|
||||
台鐵時刻表
|
||||
中華電信
|
||||
統一發票
|
||||
勞動部
|
||||
8039
|
||||
2408
|
||||
3711
|
||||
3006
|
||||
7769
|
||||
貓
|
||||
vibe coding
|
||||
teams
|
||||
顧立雄
|
||||
王維中
|
||||
林詩翔
|
||||
蹦闆
|
||||
敦化北路
|
||||
台新信用卡
|
||||
法國摩洛哥
|
||||
克里斯·米德爾頓
|
||||
凱文·魯尼
|
||||
朱琦郁
|
||||
運彩公會
|
||||
寬宏
|
||||
2449
|
||||
賭博
|
||||
寬限期
|
||||
籃籃
|
||||
6257
|
||||
美 伊
|
||||
國巨 跌停
|
||||
大谷 翔平
|
||||
林宥嘉
|
||||
台積電法說會
|
||||
fiba 世界盃資格賽
|
||||
8033
|
||||
3042
|
||||
1714
|
||||
fiba
|
||||
2352
|
||||
2481
|
||||
完全比賽
|
||||
金門 縣
|
||||
8046
|
||||
storm
|
||||
科技執法
|
||||
2奈米製程
|
||||
金 州 勇士
|
||||
台鎔科技
|
||||
法院
|
||||
paraguay vs france
|
||||
網飛
|
||||
巴拉圭 對 法國
|
||||
賴 品 妤
|
||||
台 達 電
|
||||
泰勒絲結婚
|
||||
寵物展 2026
|
||||
道奇
|
||||
coco
|
||||
海 鯤 號 潛 艦
|
||||
cblol
|
||||
吉伊卡哇特展
|
||||
lyon
|
||||
謝富旭
|
||||
2383
|
||||
軍公教
|
||||
台積電 分紅
|
||||
令和的斑小姐
|
||||
兆易創新
|
||||
李多慧
|
||||
退休金
|
||||
1326
|
||||
top
|
||||
2317
|
||||
沈富雄
|
||||
李來希
|
||||
今井達也
|
||||
快速增強
|
||||
iphone 18
|
||||
艾 薇
|
||||
高市早苗
|
||||
2884
|
||||
燕山湯圓
|
||||
6669
|
||||
uber 機車 載 客
|
||||
2344
|
||||
吳乃仁
|
||||
中国信托商业银行
|
||||
李長庚
|
||||
8021
|
||||
6285
|
||||
李在明
|
||||
警察
|
||||
彩票
|
||||
國防大學
|
||||
00685l 分割時間
|
||||
泡麵
|
||||
喬納森 庫 明 加
|
||||
2026國際足總世界盃賽程
|
||||
繼承
|
||||
2472
|
||||
8150
|
||||
林俊憲
|
||||
直升機
|
||||
|
||||
@@ -1,161 +1,100 @@
|
||||
tbilisi
|
||||
connor storrie
|
||||
georgia
|
||||
stephen bunting
|
||||
great british menu 2026
|
||||
ravi eastenders
|
||||
salford city fc
|
||||
national grid
|
||||
mass effect
|
||||
salford city vs bromley
|
||||
real salt lake vs inter miami
|
||||
provinces of the pantheon
|
||||
mls
|
||||
russell brand
|
||||
john phelan
|
||||
hung cao
|
||||
pistons vs magic
|
||||
jerry bruckheimer
|
||||
st. george's day
|
||||
asiago
|
||||
framework laptop 13 pro
|
||||
boro
|
||||
interactive investor
|
||||
mint
|
||||
believe me itv
|
||||
amanda bynes
|
||||
strasbourg vs nice
|
||||
chase bank
|
||||
jak jones
|
||||
chase
|
||||
rodri
|
||||
christopher trybus
|
||||
lsg vs rr
|
||||
scottie scheffler
|
||||
kate upton
|
||||
tommy fleetwood
|
||||
skynews
|
||||
virgin
|
||||
lewis hamilton silverstone f1 win
|
||||
sukhoi su-35
|
||||
kent police
|
||||
robert jenrick
|
||||
rory mcilroy
|
||||
us strikes iran
|
||||
sydney sweeney
|
||||
glen powell
|
||||
france vs morocco world cup 2026
|
||||
jaswant singh khalra
|
||||
dallas cowboys
|
||||
armie hammer
|
||||
cucho hernandez
|
||||
álvaro arbeloa
|
||||
ford
|
||||
weather bristol
|
||||
connections hint today
|
||||
the odyssey movie
|
||||
cnn
|
||||
duffy
|
||||
world cup scores today
|
||||
man utd transfer news
|
||||
dreamdoll
|
||||
world cup results
|
||||
world cup results today
|
||||
sky itv
|
||||
emile heskey
|
||||
vladimir putin
|
||||
iphone 17 pro
|
||||
bbc newd
|
||||
heat wave
|
||||
entry/exit system
|
||||
sebastián rulli
|
||||
news
|
||||
who is left in the world cup
|
||||
daycare
|
||||
childcare
|
||||
pub
|
||||
odira beats hodgkinson 800m oregon
|
||||
alex albon
|
||||
restaurant
|
||||
ruthie henshall
|
||||
sri lanka vs west indies
|
||||
golf
|
||||
silverstone weather
|
||||
rugby today
|
||||
harry
|
||||
trent alexander-arnold
|
||||
ruthie henshall prince edward
|
||||
pension
|
||||
hebden bridge
|
||||
sandra bullock practical magic
|
||||
rolls-royce share price drop
|
||||
invincible season 5
|
||||
josé mourinho
|
||||
chris wakelin
|
||||
jimmy bullard adam thomas
|
||||
aer lingus flight cancellations
|
||||
sam west
|
||||
oxford united
|
||||
liam delap
|
||||
wba
|
||||
реал мадрид – алавес
|
||||
coppa italia
|
||||
girona vs real betis
|
||||
marcus rashford
|
||||
الريال ضد ألافيس
|
||||
supreme leader of iran
|
||||
oscar isaac
|
||||
xrp ledger
|
||||
pablo
|
||||
is tane leaving home and away
|
||||
julie andrews
|
||||
danny boyle
|
||||
nina eastenders
|
||||
john stones
|
||||
amazon vega os fire tv
|
||||
porto vs tondela
|
||||
santos vs fluminense
|
||||
martin brundle lost f1 seat
|
||||
keegan bradley
|
||||
david attenborough
|
||||
antoni kowalski
|
||||
kezia dugdale
|
||||
car
|
||||
beef netflix
|
||||
juventus vs bologna
|
||||
losc vs nice
|
||||
david szalay
|
||||
the killer
|
||||
joe cole
|
||||
lille fc
|
||||
simon cowell
|
||||
pl
|
||||
frank lampard everton
|
||||
nottingham forest fixtures
|
||||
everton manager
|
||||
dragons vs bulls
|
||||
suede
|
||||
lahore
|
||||
wrestlemania 2026
|
||||
giants vs rhinos
|
||||
glenrothan
|
||||
york knights vs leopards
|
||||
tim sherwood
|
||||
redditch
|
||||
ccfc
|
||||
europa conference league
|
||||
bromley fc
|
||||
paul merton
|
||||
chris wood
|
||||
istanbul
|
||||
turkey
|
||||
lucy watson
|
||||
thiago silva
|
||||
bednarek
|
||||
jan bednarek
|
||||
vincent kompany
|
||||
mbappe
|
||||
luis suarez sporting
|
||||
madrid fc
|
||||
andriy lunin
|
||||
what did bec say to rachel mafs
|
||||
yalla kora
|
||||
geovany quenda
|
||||
sporting cp
|
||||
pavlovic
|
||||
talktalk
|
||||
arne slot drops mohamed salah
|
||||
suns vs trail blazers
|
||||
italian
|
||||
used cars
|
||||
mlb
|
||||
roman
|
||||
johnny somali
|
||||
windows update
|
||||
davion mitchell
|
||||
hbo max
|
||||
bolton wanderers
|
||||
barca vs atletico
|
||||
kemi badenoch
|
||||
warren zaïre-emery
|
||||
barca
|
||||
samuel west
|
||||
barcelona fc
|
||||
lamine yamal
|
||||
hbomax
|
||||
noah okafor
|
||||
casemiro
|
||||
talksport
|
||||
lazio
|
||||
leeds united fixtures
|
||||
bruno fernandes
|
||||
afc champions league
|
||||
meteor
|
||||
carlos queiroz
|
||||
travel warning
|
||||
tori amos
|
||||
cloud
|
||||
reading
|
||||
rolls-royce smr
|
||||
istanbul airport
|
||||
a27
|
||||
bridget phillipson
|
||||
tottenham standings
|
||||
may bank holiday 2026
|
||||
toto wolff
|
||||
london weather today
|
||||
bbc news latest
|
||||
premier league fixtures
|
||||
tesco near me
|
||||
tube map london
|
||||
uk bank holidays
|
||||
royal family news
|
||||
how to make english tea
|
||||
nhs symptom checker
|
||||
property for sale in london
|
||||
test
|
||||
luis suárez
|
||||
luis diaz
|
||||
james rodriguez
|
||||
world cup round of 16
|
||||
england mexico 1am kickoff
|
||||
aryna sabalenka wimbledon dog policy
|
||||
jesy nelson
|
||||
olivia wilde
|
||||
luca zidane
|
||||
switzerland vs algeria
|
||||
nhs walking exercise rewards
|
||||
algeria fc
|
||||
world cup bracket
|
||||
wc fixtures
|
||||
metropolitan police
|
||||
dp world tour
|
||||
fifa world cup fantasy
|
||||
fifa fantasy world cup 2026
|
||||
weather coventry
|
||||
spain vs austria
|
||||
travis kelce
|
||||
world cup fantasy
|
||||
caniculă
|
||||
lotto results national lottery results
|
||||
who are england playing today
|
||||
scooter
|
||||
ian poulter
|
||||
eng vs congo - kinshasa
|
||||
nancy guthrie
|
||||
cholesterol
|
||||
james holder
|
||||
canada day
|
||||
cuba
|
||||
red arrows new jets
|
||||
baroness amos
|
||||
helen skelton
|
||||
defence investment plan
|
||||
oilprice.com
|
||||
tg jones restructuring plan
|
||||
weather liverpool
|
||||
bbc football fixtures
|
||||
bild
|
||||
cara delevingne
|
||||
asylum seekers
|
||||
|
||||
@@ -1,165 +1,100 @@
|
||||
brandon marsh
|
||||
psv vs pec zwolle
|
||||
daniel merida aguilar
|
||||
william byron
|
||||
eve plumb
|
||||
mall of louisiana
|
||||
real oviedo vs villarreal
|
||||
real oviedo - villarreal
|
||||
call of duty: black ops 7
|
||||
tarik skubal
|
||||
cubs game today
|
||||
mike repole
|
||||
okc thunder
|
||||
atlanta braves
|
||||
mlb scores today
|
||||
braves standings
|
||||
kevin mckidd
|
||||
dan vladar
|
||||
mls standings
|
||||
dodgers - giants
|
||||
jon ossoff
|
||||
ozzy survivor
|
||||
braves score
|
||||
washington nationals
|
||||
alex bregman
|
||||
peter lambert
|
||||
darrell sheets
|
||||
ludwig kaiser
|
||||
edina shooting
|
||||
atalanta - lazio
|
||||
barcelona vs celta vigo
|
||||
rafael jodar
|
||||
rivian r2
|
||||
pick 4
|
||||
aoc
|
||||
cleveland browns
|
||||
nintendo switch gamecube games
|
||||
lsg vs rr
|
||||
spirit
|
||||
atlanta fire
|
||||
deshaun watson
|
||||
good morning america
|
||||
pittsburgh
|
||||
strands answers
|
||||
scientist
|
||||
mark cuban pharmacy
|
||||
inter milan
|
||||
lens vs toulouse
|
||||
david james
|
||||
andy weir
|
||||
noah kahan tiny desk concert
|
||||
jennifer garner 54th birthday photos
|
||||
troy baker
|
||||
real madrid - alavés
|
||||
girona - real betis
|
||||
girona vs real betis
|
||||
arc raiders
|
||||
schd etf dividend yield
|
||||
deportación
|
||||
lecce - fiorentina
|
||||
valley forge high school
|
||||
betty yee
|
||||
seth trimble
|
||||
bill belichick
|
||||
winter storm
|
||||
jim parsons
|
||||
kings vs avalanche
|
||||
suns vs thunder
|
||||
wolf
|
||||
santos - fluminense
|
||||
mets - cubs
|
||||
alexander manninger
|
||||
santos vs fluminense
|
||||
disclosure day
|
||||
tobias myers
|
||||
vladimir putin
|
||||
knicks game
|
||||
ben rice
|
||||
prem
|
||||
timberwolves vs nuggets
|
||||
cody bellinger
|
||||
nik khamenia
|
||||
real sociedad
|
||||
nurburgring crash
|
||||
atlético madrid - real sociedad
|
||||
ruke orhorhoro
|
||||
radar
|
||||
the weather channel
|
||||
kttc
|
||||
luke gulbranson
|
||||
kttc weather
|
||||
comcast data breach settlement
|
||||
tornado watch
|
||||
moisés ballesteros
|
||||
mets game today
|
||||
giancarlo stanton
|
||||
real betis
|
||||
prosecution of daniel duggan
|
||||
liv morgan
|
||||
mikey williams
|
||||
indiana fever sophie cunningham baptism
|
||||
gregory donnell morgan jr
|
||||
why are the sirens going off
|
||||
leylah fernandez
|
||||
strasbourg vs mainz
|
||||
michael olise
|
||||
ريال مدريد
|
||||
dazn
|
||||
paramount
|
||||
univision
|
||||
jude bellingham
|
||||
sam antonacci
|
||||
real madrid
|
||||
bayern
|
||||
arda güler
|
||||
los angeles dodgers
|
||||
vandenberg launch schedule
|
||||
ryan dunn
|
||||
alex vesia
|
||||
ken jennings
|
||||
ucla baseball
|
||||
padres standings
|
||||
mets vs dodgers match player stats
|
||||
bo bichette
|
||||
jorge polanco
|
||||
psg
|
||||
barca
|
||||
vix
|
||||
fcb
|
||||
barcelona schedule
|
||||
tarjeta roja
|
||||
a knight of the seven kingdoms season 2
|
||||
charlotte flair
|
||||
usa network
|
||||
natalie sago
|
||||
carlos queiroz
|
||||
carlos batista
|
||||
katie boulter
|
||||
levante - getafe
|
||||
levante vs getafe
|
||||
mcilroy green jacket presentation
|
||||
man united vs leeds
|
||||
7-eleven closing locations
|
||||
cloud
|
||||
sports
|
||||
sony playstation
|
||||
alaska airline
|
||||
toronto
|
||||
sydney
|
||||
paris
|
||||
tokyo
|
||||
delhi
|
||||
sykkuno drama
|
||||
Los Angeles weather today
|
||||
S&P 500 stock chart
|
||||
local coffee shops near me
|
||||
latest tech news
|
||||
California traffic updates
|
||||
AI startups in Silicon ValleySan Jose weather this weekend
|
||||
Silicon Valley tech news
|
||||
best tacos in San Jose
|
||||
Apple park visitor center hours
|
||||
Seattle Weather
|
||||
Las Vegas strip
|
||||
Charlotte Hornets
|
||||
bitcoin
|
||||
台风
|
||||
alaskaair
|
||||
rory mcilroy
|
||||
showdown
|
||||
dorothea puente
|
||||
new york times
|
||||
ca lottery
|
||||
mookie betts
|
||||
rolling stone
|
||||
kospi
|
||||
loans
|
||||
kuwait
|
||||
kyle karros
|
||||
jordan romano
|
||||
auli'i cravalho
|
||||
evan phillips
|
||||
mason miller
|
||||
alex freeland
|
||||
quinten post
|
||||
openai
|
||||
jaswant singh khalra
|
||||
brennan bernardino
|
||||
dodgers
|
||||
dodgers game today
|
||||
rockies
|
||||
dreamdoll
|
||||
new jersey fireboat whale collision
|
||||
dodger game
|
||||
real estate market
|
||||
open world
|
||||
jeremy renner
|
||||
nolan xavier wells
|
||||
ap
|
||||
copa mundial de fútbol
|
||||
seattle seahawks
|
||||
cher
|
||||
sebastian rulli
|
||||
rittman ohio
|
||||
will smith
|
||||
coney island shooting
|
||||
denzel washington
|
||||
flood warning
|
||||
newport beach news
|
||||
waikiki fireworks
|
||||
provo fire
|
||||
seattle fireworks
|
||||
westgate shooting
|
||||
chelan hills fire
|
||||
washington dc extreme heat wave
|
||||
what is 4th of july
|
||||
jaidyn alexis and bravo
|
||||
tanner scott
|
||||
kelsey rowing
|
||||
shohei ohtani
|
||||
vaccines
|
||||
flu shots
|
||||
immunizations
|
||||
vaccinations
|
||||
sk hynix stock
|
||||
mission impossible
|
||||
madonna
|
||||
paul gervase
|
||||
donald trump park signage lawsuit
|
||||
norovirus
|
||||
dakota johnson
|
||||
tommy edman
|
||||
algeria fc
|
||||
mariners standings
|
||||
jonathan kuminga
|
||||
alex scott
|
||||
andres escobar
|
||||
rob lowe
|
||||
rocket launch today
|
||||
dbacks
|
||||
marvin bagley
|
||||
tom hanks
|
||||
diamondbacks
|
||||
lisa kudrow
|
||||
what is july 1st
|
||||
rio ferdinand
|
||||
bovada
|
||||
wyatt mills
|
||||
colombia vs ghana
|
||||
how many more games in the world cup
|
||||
partidos del mundial 2026
|
||||
fargo
|
||||
belgium vs senegal
|
||||
dave roberts
|
||||
kirk franklin philadelphia
|
||||
sandro mamukelashvili
|
||||
walton goggins
|
||||
ivory coast vs norway
|
||||
cole young
|
||||
world cup schedule tomorrow
|
||||
cubs standings
|
||||
world cup games tomorrow
|
||||
northern lights forecast
|
||||
morocco vs canada
|
||||
crude
|
||||
|
||||
@@ -1,137 +1,100 @@
|
||||
stuttgart đấu với freiburg
|
||||
levante – sevilla
|
||||
giao dịch tài chính
|
||||
sevilla
|
||||
rayo đấu với espanyol
|
||||
levante đấu với sevilla
|
||||
bong ma hanh phuc
|
||||
aryna sabalenka
|
||||
mason nguyễn
|
||||
marcus rashford
|
||||
hà nội
|
||||
salt lake đấu với inter miami
|
||||
hung cao
|
||||
neymar
|
||||
cầu phú mỹ
|
||||
ma túy
|
||||
e
|
||||
tội phạm
|
||||
nguyễn thanh nam
|
||||
máy bay boeing 737
|
||||
lương tối thiểu
|
||||
tin tuc
|
||||
doanh thu
|
||||
fifa
|
||||
trường đại học sư phạm hà nội
|
||||
lcs
|
||||
nghệ sĩ ưu tú
|
||||
na uy
|
||||
tuyên quang
|
||||
trần đức thắng
|
||||
bao bong da
|
||||
đại tá
|
||||
va chạm
|
||||
highlight
|
||||
bruno fernandes
|
||||
sukhoi su-57
|
||||
tập đoàn
|
||||
bitcoin
|
||||
omsk
|
||||
tesla
|
||||
openai
|
||||
học
|
||||
đại học y dược cần thơ
|
||||
thói quen
|
||||
đàm vĩnh hưng
|
||||
bộ quốc phòng
|
||||
xe
|
||||
nghị định 254 năm 2026 của chính phủ
|
||||
công viên lê thị riêng
|
||||
thái lan
|
||||
toán học
|
||||
pháo hoa
|
||||
việt hương
|
||||
morgan rogers
|
||||
dan burn
|
||||
tạ minh tâm
|
||||
chó hoang và xương
|
||||
tuổi trẻ
|
||||
raphinha
|
||||
scratch
|
||||
tiếp viên hàng không
|
||||
cổ tức
|
||||
lịch âm
|
||||
nhac
|
||||
wordle
|
||||
날씨
|
||||
giá cà phê hôm nay
|
||||
premier league standings
|
||||
mls
|
||||
phạm nhật vượng
|
||||
cristiano roland
|
||||
burnley vs man city
|
||||
bayern munich
|
||||
atalanta đấu với lazio
|
||||
barcelona đấu với celta
|
||||
mc vs
|
||||
psg – nantes
|
||||
leverkusen đấu với bayern
|
||||
elche – atlético madrid
|
||||
bryan mbeumo
|
||||
al nasr
|
||||
trực tiếp bóng đá hôm nay
|
||||
vtv3
|
||||
vtv3 trực tiếp
|
||||
tv
|
||||
vtv
|
||||
vtv6
|
||||
360
|
||||
lê khánh
|
||||
ô tô
|
||||
lê phương
|
||||
trực tiếp bóng đá u17 hôm nay
|
||||
inter milan
|
||||
chelsea
|
||||
girona đấu với betis
|
||||
real madrid đấu với alavés
|
||||
brighton vs chelsea
|
||||
brighton đấu với chelsea
|
||||
ath. bilbao đấu với osasuna
|
||||
pep guardiola
|
||||
zelvia đấu với shabab al-ahli
|
||||
cầu thủ
|
||||
lecce vs fiorentina
|
||||
fiorentina
|
||||
crystal palace đấu với west ham
|
||||
afc champions league
|
||||
eduardo camavinga
|
||||
vissel kobe
|
||||
gemi
|
||||
idp
|
||||
siêu dự an
|
||||
câu lạc bộ bóng đá manchester united
|
||||
tập đoàn vingroup
|
||||
đông bắc bộ
|
||||
xét tuyển đại học
|
||||
vf2
|
||||
nhà máy
|
||||
windy
|
||||
khoa học máy tính
|
||||
canada vs maroc
|
||||
jurrien timber
|
||||
xe máy
|
||||
tai nạn
|
||||
úc vs ai cập
|
||||
thu nhập cá nhân
|
||||
hứa hồng hải
|
||||
thụy sĩ đấu với algérie
|
||||
switzerland vs algeria
|
||||
nghị định 253/2026/nđ-cp
|
||||
giải bóng đá vô địch quốc gia việt nam
|
||||
tiền lương
|
||||
vinfast
|
||||
tử hình
|
||||
cảnh sát
|
||||
hồng đào
|
||||
nha khoa
|
||||
bão số 1
|
||||
giá vàng 2 7 2026
|
||||
nọc rắn
|
||||
nhiệm kỳ
|
||||
đơn vị hành chính cấp xã
|
||||
ngày quốc khánh
|
||||
cục đăng kiểm việt nam
|
||||
sầu riêng
|
||||
nguyễn đình hối
|
||||
kinh tế quốc dân
|
||||
kỳ nghỉ
|
||||
giám sát
|
||||
moisés caicedo
|
||||
huỳnh trần ý nhi
|
||||
đặc sản
|
||||
chiến binh
|
||||
quán triệt nghị quyết
|
||||
đoàn văn hậu
|
||||
mai phương thúy
|
||||
thẻ căn cước
|
||||
chính sách xã hội
|
||||
bảo hiểm y tế
|
||||
crystal palace vs west ham
|
||||
sporting lisbon
|
||||
psg vs lyon
|
||||
ca sĩ
|
||||
juventus đấu với bologna
|
||||
gladbach đấu với mainz
|
||||
twitch
|
||||
psg đấu với lyon
|
||||
juventus
|
||||
ligue 1
|
||||
trận đấu ngoại hạng anh
|
||||
chelsea đấu với man utd
|
||||
atlético madrid đấu với real sociedad
|
||||
roma đấu với atalanta
|
||||
epl
|
||||
iem rio 2026
|
||||
tot
|
||||
tập đoàn gelex
|
||||
napoli
|
||||
đường ray
|
||||
inter
|
||||
inter đấu với cagliari
|
||||
sassuolo vs como
|
||||
david alaba
|
||||
claude design
|
||||
fenerbahçe đấu với rizespor
|
||||
como
|
||||
como vs
|
||||
thẻ đỏ
|
||||
al ahli
|
||||
porto vs
|
||||
crystal palace
|
||||
porto
|
||||
uefa europa conference
|
||||
betis đấu với braga
|
||||
real betis vs braga
|
||||
aston villa đấu với bologna
|
||||
fiorentina đấu với crystal palace
|
||||
c2
|
||||
cup c2
|
||||
thể thao
|
||||
arda güler
|
||||
aleksandar pavlović
|
||||
ars
|
||||
90
|
||||
real
|
||||
real madrid
|
||||
xoi
|
||||
luong sơn
|
||||
fpt
|
||||
phan văn giang
|
||||
nhà ở xã hội
|
||||
club america
|
||||
giàu
|
||||
đỗ mỹ linh
|
||||
sun group
|
||||
hưng yên
|
||||
nvl
|
||||
américa đấu với nashville
|
||||
VnExpress
|
||||
Zing News
|
||||
Thời tiết Hà Nội
|
||||
Giá vàng hôm nay
|
||||
Shopee VN
|
||||
Tiki
|
||||
Vietjet Air
|
||||
Vietnam Airlines
|
||||
Bóng đá trực tuyến
|
||||
Lịch thi đấu Euro
|
||||
Xổ số miền Bắc
|
||||
Grab Vietnam
|
||||
VTV Go
|
||||
Học tiếng Anh
|
||||
Du lịch Đà Lạt
|
||||
cổ đông
|
||||
may mắn
|
||||
time is
|
||||
|
||||
454
data/map.json
454
data/map.json
@@ -18,6 +18,10 @@
|
||||
{
|
||||
"id": "Tokyo",
|
||||
"name": "Tokyo (东京)"
|
||||
},
|
||||
{
|
||||
"id": "Osaka",
|
||||
"name": "Osaka (大阪)"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -40,6 +44,210 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "PH",
|
||||
"name": "Philippines (菲律宾)",
|
||||
"keyword_file": "kw_PH.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Manila",
|
||||
"name": "Manila (马尼拉)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "TH",
|
||||
"name": "Thailand (泰国)",
|
||||
"keyword_file": "kw_TH.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Bangkok",
|
||||
"name": "Bangkok (曼谷)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "KH",
|
||||
"name": "Cambodia (柬埔寨)",
|
||||
"keyword_file": "kw_KH.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "PhnomPenh",
|
||||
"name": "Phnom Penh (金边)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "MM",
|
||||
"name": "Myanmar (缅甸)",
|
||||
"keyword_file": "kw_MM.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Yangon",
|
||||
"name": "Yangon (仰光)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "LA",
|
||||
"name": "Laos (老挝)",
|
||||
"keyword_file": "kw_LA.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Vientiane",
|
||||
"name": "Vientiane (万象)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "ID",
|
||||
"name": "Indonesia (印度尼西亚)",
|
||||
"keyword_file": "kw_ID.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Jakarta",
|
||||
"name": "Jakarta (雅加达)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "IN",
|
||||
"name": "India (印度)",
|
||||
"keyword_file": "kw_IN.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Delhi",
|
||||
"name": "Delhi (新德里)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "MN",
|
||||
"name": "Mongolia (蒙古)",
|
||||
"keyword_file": "kw_MN.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Ulaanbaatar",
|
||||
"name": "Ulaanbaatar (乌兰巴托)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "NP",
|
||||
"name": "Nepal (尼泊尔)",
|
||||
"keyword_file": "kw_NP.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Kathmandu",
|
||||
"name": "Kathmandu (加德满都)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "BD",
|
||||
"name": "Bangladesh (孟加拉)",
|
||||
"keyword_file": "kw_BD.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Dhaka",
|
||||
"name": "Dhaka (达卡)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "AE",
|
||||
"name": "United Arab Emirates (阿联酋)",
|
||||
"keyword_file": "kw_AE.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Dubai",
|
||||
"name": "Dubai (迪拜)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "SA",
|
||||
"name": "Saudi Arabia (沙特阿拉伯)",
|
||||
"keyword_file": "kw_SA.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Riyadh",
|
||||
"name": "Riyadh (利雅得)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "KR",
|
||||
"name": "South Korea (韩国)",
|
||||
@@ -74,6 +282,23 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "MO",
|
||||
"name": "Macau (澳门)",
|
||||
"keyword_file": "kw_MO.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Macau",
|
||||
"name": "Macau (澳门)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "VN",
|
||||
"name": "Vietnam (越南)",
|
||||
@@ -152,6 +377,40 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "TR",
|
||||
"name": "Turkey (土耳其)",
|
||||
"keyword_file": "kw_TR.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Istanbul",
|
||||
"name": "Istanbul (伊斯坦布尔)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "BG",
|
||||
"name": "Bulgaria (保加利亚)",
|
||||
"keyword_file": "kw_BG.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Sofia",
|
||||
"name": "Sofia (索非亚)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "DE",
|
||||
"name": "Germany (德国)",
|
||||
@@ -166,6 +425,46 @@
|
||||
"name": "Frankfurt (法兰克福)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "SN",
|
||||
"name": "Saxony (萨克森州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Falkenstein",
|
||||
"name": "Falkenstein (法尔肯施泰因)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "BY",
|
||||
"name": "Bavaria (巴伐利亚州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Nuremberg",
|
||||
"name": "Nuremberg (纽伦堡)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "BE",
|
||||
"name": "Berlin (柏林州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Berlin",
|
||||
"name": "Berlin (柏林)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "NW",
|
||||
"name": "North Rhine-Westphalia (北莱茵-威斯特法伦州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Aachen",
|
||||
"name": "Aachen (亚琛)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -231,6 +530,16 @@
|
||||
"name": "United States (美国)",
|
||||
"keyword_file": "kw_US.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "AZ",
|
||||
"name": "Arizona (亚利桑那州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Phoenix",
|
||||
"name": "Phoenix (凤凰城)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CA",
|
||||
"name": "California (加州)",
|
||||
@@ -239,9 +548,61 @@
|
||||
"id": "Los_Angeles",
|
||||
"name": "Los Angeles (洛杉矶)"
|
||||
},
|
||||
{
|
||||
"id": "Ontario",
|
||||
"name": "Ontario (安大略)"
|
||||
},
|
||||
{
|
||||
"id": "San_Jose",
|
||||
"name": "San Jose (圣何塞)"
|
||||
},
|
||||
{
|
||||
"id": "Fremont",
|
||||
"name": "Fremont (弗里蒙特)"
|
||||
},
|
||||
{
|
||||
"id": "Irvine",
|
||||
"name": "Irvine (尔湾)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "FL",
|
||||
"name": "Florida (佛罗里达州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Miami",
|
||||
"name": "Miami (迈阿密)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "GA",
|
||||
"name": "Georgia (佐治亚州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Atlanta",
|
||||
"name": "Atlanta (亚特兰大)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "HI",
|
||||
"name": "Hawaii",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Honolulu",
|
||||
"name": "Honolulu (檀香山)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "IA",
|
||||
"name": "Iowa (爱荷华州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Council_Bluffs",
|
||||
"name": "Council Bluffs (康瑟尔布拉夫斯)"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -252,6 +613,20 @@
|
||||
{
|
||||
"id": "Warrenville",
|
||||
"name": "Warrenville (沃伦维尔)"
|
||||
},
|
||||
{
|
||||
"id": "Chicago",
|
||||
"name": "Chicago (芝加哥)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "KS",
|
||||
"name": "Kansas (堪萨斯州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Kansas_City",
|
||||
"name": "Kansas City (堪萨斯城)"
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -265,6 +640,16 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "NJ",
|
||||
"name": "New Jersey (新泽西州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Newark",
|
||||
"name": "Newark (纽瓦克)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "NV",
|
||||
"name": "Nevada (内华达州)",
|
||||
@@ -275,6 +660,26 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "NY",
|
||||
"name": "New York (纽约州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "New_York",
|
||||
"name": "New York (纽约)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "OH",
|
||||
"name": "Ohio (俄亥俄州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Columbus",
|
||||
"name": "Columbus (哥伦布)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "OR",
|
||||
"name": "Oregon (俄勒冈州)",
|
||||
@@ -285,6 +690,20 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "TX",
|
||||
"name": "Texas (得克萨斯州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Dallas",
|
||||
"name": "Dallas (达拉斯)"
|
||||
},
|
||||
{
|
||||
"id": "Houston",
|
||||
"name": "Houston (休斯顿)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "UT",
|
||||
"name": "Utah (犹他州)",
|
||||
@@ -295,6 +714,16 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "VA",
|
||||
"name": "Virginia (弗吉尼亚州)",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Ashburn",
|
||||
"name": "Ashburn (阿什本)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "WA",
|
||||
"name": "Washington (华盛顿州)",
|
||||
@@ -392,6 +821,29 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "AFRICA",
|
||||
"name": "非洲战区 (Africa)",
|
||||
"countries": [
|
||||
{
|
||||
"id": "NG",
|
||||
"name": "Nigeria (尼日利亚)",
|
||||
"keyword_file": "kw_NG.txt",
|
||||
"states": [
|
||||
{
|
||||
"id": "Default",
|
||||
"name": "Default State",
|
||||
"cities": [
|
||||
{
|
||||
"id": "Lagos",
|
||||
"name": "Lagos (拉各斯)"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
50
data/regions/AE/Default/Dubai.json
Normal file
50
data/regions/AE/Default/Dubai.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "UAE (Dubai)",
|
||||
"google_module": {
|
||||
"base_lat": 25.2048,
|
||||
"base_lon": 55.2708,
|
||||
"lang_params": "hl=en-AE&gl=AE",
|
||||
"valid_url_suffix": "ae"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://gulfnews.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=39845",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42570",
|
||||
"https://www.thenationalnews.com/",
|
||||
"https://www.centralbank.ae/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43959",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94646",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3703",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55968",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98507",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43498",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52797",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88033",
|
||||
"https://www.khaleejtimes.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67578",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87020",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=95028",
|
||||
"https://u.ae/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34457",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73162",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28390",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=92035",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48089",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59358",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7887",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79048",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58523",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2302",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7793",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37874"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.centralbank.ae/",
|
||||
"https://www.thenationalnews.com/",
|
||||
"https://u.ae/",
|
||||
"https://www.khaleejtimes.com/",
|
||||
"https://gulfnews.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,42 +8,47 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/abc-weekly-news-quiz-april-24/106596462",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/ndis-participants-community-support-fears-government-changes/106596958",
|
||||
"https://www.abc.net.au/news/2026-04-24/uk-braces-for-prospect-of-sixth-pm-in-seven-years/106599990",
|
||||
"https://www.abc.net.au/news/2026-04-24/the-legacy-of-sikh-soldiers-anzac-day/106593346",
|
||||
"https://www.abc.net.au/news/2026-04-24/tasmania-police-sergeant-used-internal-system-to-monitor-wife/106593204",
|
||||
"https://www.abc.net.au/news/2026-04-24/jane-fonda-importance-in-developing-fitness-industry/106535102",
|
||||
"https://www.abc.net.au/news/2026-04-24/viva-energy-boss-tell-alan-kohler-need-more-oil-refineries-fuel/106596864",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/iran-war-live-updates-us-shoot-kill-hormuz/106598082",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36409",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79292",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99076",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/power-price-warning-over-proposed-changes-to-tax-laws/106587928",
|
||||
"https://www.abc.net.au/news/2026-04-24/charts-paint-worrying-picture-global-fertiliser-prices/106590152",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/south-china-sea-state-funded-fishing-boat-militia/106570054",
|
||||
"https://www.abc.net.au/news/2026-04-24/baby-boomers-labor-generational-inequality-federal-budget-ndis/106582640",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61784",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=24345",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7592",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36796",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://my.gov.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/fuel-price-supply-explainer/106593698",
|
||||
"https://www.abc.net.au/news/2026-04-23/nt-inquest-woman-darwin-dv-shelter-death-police-child-safety/106595670",
|
||||
"https://www.abc.net.au/news/2026-04-24/anzac-day-2026-public-holiday-australia-states/106583304"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54743",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82845",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47655",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11409",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59584",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59861",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86918",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42144",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56082",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58206",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42793",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=49382",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=89818",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=9718",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5037",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12552",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18233",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57586"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.bunnings.com.au/"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/power-price-warning-over-proposed-changes-to-tax-laws/106587928",
|
||||
"https://www.abc.net.au/news/2026-04-24/jane-fonda-importance-in-developing-fitness-industry/106535102",
|
||||
"https://www.abc.net.au/news/2026-04-24/abc-weekly-news-quiz-april-24/106596462",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94753",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70589",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=745",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/tasmania-police-sergeant-used-internal-system-to-monitor-wife/106593204",
|
||||
"https://www.abc.net.au/news/2026-04-24/the-legacy-of-sikh-soldiers-anzac-day/106593346",
|
||||
"https://www.abc.net.au/news/2026-04-24/fuel-price-supply-explainer/106593698",
|
||||
"https://www.abc.net.au/news/2026-04-23/nt-inquest-woman-darwin-dv-shelter-death-police-child-safety/106595670",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44420",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90786",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55274",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84641",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20053",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/anzac-day-2026-public-holiday-australia-states/106583304",
|
||||
"https://my.gov.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/ndis-participants-community-support-fears-government-changes/106596958",
|
||||
"https://www.abc.net.au/news/2026-04-24/iran-war-live-updates-us-shoot-kill-hormuz/106598082",
|
||||
"https://www.abc.net.au/news/2026-04-24/baby-boomers-labor-generational-inequality-federal-budget-ndis/106582640",
|
||||
"https://www.abc.net.au/news/2026-04-24/viva-energy-boss-tell-alan-kohler-need-more-oil-refineries-fuel/106596864",
|
||||
"https://www.abc.net.au/news/2026-04-24/south-china-sea-state-funded-fishing-boat-militia/106570054",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/uk-braces-for-prospect-of-sixth-pm-in-seven-years/106599990",
|
||||
"https://www.abc.net.au/news/2026-04-24/charts-paint-worrying-picture-global-fertiliser-prices/106590152"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70950",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7560",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70955",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=89653",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19777",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=92312",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79927",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86542",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21437",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99757",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31273",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10332",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=751",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62518",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11380",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69741",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87189"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.bunnings.com.au/"
|
||||
"https://www.realestate.com.au/",
|
||||
"https://my.gov.au/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.abc.net.au/news/2026-04-24/baby-boomers-labor-generational-inequality-federal-budget-ndis/106582640",
|
||||
"https://www.abc.net.au/news/2026-04-24/tasmania-police-sergeant-used-internal-system-to-monitor-wife/106593204",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68330",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18545",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74154",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83100",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/iran-war-live-updates-us-shoot-kill-hormuz/106598082",
|
||||
"https://www.abc.net.au/news/2026-04-24/ndis-participants-community-support-fears-government-changes/106596958",
|
||||
"https://www.abc.net.au/news/2026-04-24/charts-paint-worrying-picture-global-fertiliser-prices/106590152",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/the-legacy-of-sikh-soldiers-anzac-day/106593346",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/jane-fonda-importance-in-developing-fitness-industry/106535102",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/viva-energy-boss-tell-alan-kohler-need-more-oil-refineries-fuel/106596864",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/fuel-price-supply-explainer/106593698",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70323",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25550",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7219",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71294",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21840",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32176",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32072",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63036",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58824",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/anzac-day-2026-public-holiday-australia-states/106583304",
|
||||
"https://www.abc.net.au/news/2026-04-24/power-price-warning-over-proposed-changes-to-tax-laws/106587928",
|
||||
"https://www.abc.net.au/news/2026-04-23/nt-inquest-woman-darwin-dv-shelter-death-police-child-safety/106595670",
|
||||
"https://www.abc.net.au/news/2026-04-24/abc-weekly-news-quiz-april-24/106596462",
|
||||
"https://my.gov.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/south-china-sea-state-funded-fishing-boat-militia/106570054",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/uk-braces-for-prospect-of-sixth-pm-in-seven-years/106599990"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=9035",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60552",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56955",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93504",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78574",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88018",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68262",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67688",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36827",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17660",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11719",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74329"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://my.gov.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.bunnings.com.au/"
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.seek.com.au/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/viva-energy-boss-tell-alan-kohler-need-more-oil-refineries-fuel/106596864",
|
||||
"https://www.abc.net.au/news/2026-04-24/south-china-sea-state-funded-fishing-boat-militia/106570054",
|
||||
"https://www.abc.net.au/news/2026-04-24/ndis-participants-community-support-fears-government-changes/106596958",
|
||||
"https://www.abc.net.au/news/2026-04-23/nt-inquest-woman-darwin-dv-shelter-death-police-child-safety/106595670",
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/power-price-warning-over-proposed-changes-to-tax-laws/106587928",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/abc-weekly-news-quiz-april-24/106596462",
|
||||
"https://www.abc.net.au/news/2026-04-24/uk-braces-for-prospect-of-sixth-pm-in-seven-years/106599990",
|
||||
"https://www.abc.net.au/news/2026-04-24/anzac-day-2026-public-holiday-australia-states/106583304",
|
||||
"https://www.abc.net.au/news/2026-04-24/jane-fonda-importance-in-developing-fitness-industry/106535102",
|
||||
"https://www.abc.net.au/news/2026-04-24/fuel-price-supply-explainer/106593698",
|
||||
"https://www.abc.net.au/news/2026-04-24/the-legacy-of-sikh-soldiers-anzac-day/106593346",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16781",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/baby-boomers-labor-generational-inequality-federal-budget-ndis/106582640",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51004",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/charts-paint-worrying-picture-global-fertiliser-prices/106590152",
|
||||
"https://www.abc.net.au/news/2026-04-24/tasmania-police-sergeant-used-internal-system-to-monitor-wife/106593204",
|
||||
"https://www.abc.net.au/news/2026-04-24/iran-war-live-updates-us-shoot-kill-hormuz/106598082",
|
||||
"https://www.coles.com.au/"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27028",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86563",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31145",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66016",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=49627",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10879",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86865",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1644",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10612",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57331",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36445",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16982",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31046",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46004",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94283",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63670",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58316",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16695",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35082",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46095",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94935",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99533",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98327"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.bunnings.com.au/"
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.ato.gov.au/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.abc.net.au/news/2026-04-24/ndis-participants-community-support-fears-government-changes/106596958",
|
||||
"https://my.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/power-price-warning-over-proposed-changes-to-tax-laws/106587928",
|
||||
"https://www.abc.net.au/news/2026-04-24/viva-energy-boss-tell-alan-kohler-need-more-oil-refineries-fuel/106596864",
|
||||
"https://www.abc.net.au/news/2026-04-24/baby-boomers-labor-generational-inequality-federal-budget-ndis/106582640",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/charts-paint-worrying-picture-global-fertiliser-prices/106590152",
|
||||
"https://www.abc.net.au/news/2026-04-24/tasmania-police-sergeant-used-internal-system-to-monitor-wife/106593204",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50984",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96884",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88365",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1286",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35661",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58503",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45135",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8976",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71888",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37573",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20932",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80776",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/abc-weekly-news-quiz-april-24/106596462",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/south-china-sea-state-funded-fishing-boat-militia/106570054",
|
||||
"https://www.abc.net.au/news/2026-04-24/jane-fonda-importance-in-developing-fitness-industry/106535102",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8441",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79541",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/anzac-day-2026-public-holiday-australia-states/106583304",
|
||||
"https://www.abc.net.au/news/2026-04-23/nt-inquest-woman-darwin-dv-shelter-death-police-child-safety/106595670",
|
||||
"https://www.abc.net.au/news/2026-04-24/fuel-price-supply-explainer/106593698",
|
||||
"https://www.abc.net.au/news/2026-04-24/uk-braces-for-prospect-of-sixth-pm-in-seven-years/106599990",
|
||||
"https://www.abc.net.au/news/2026-04-24/the-legacy-of-sikh-soldiers-anzac-day/106593346",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90131",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64791",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71437",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82313",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56441",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45259",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.abc.net.au/news/2026-04-24/iran-war-live-updates-us-shoot-kill-hormuz/106598082",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.commbank.com.au/"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93031",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13402",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5048",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50005",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40481"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://my.gov.au/",
|
||||
"https://www.ato.gov.au/",
|
||||
"https://www.bom.gov.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.amazon.com.au/",
|
||||
"https://www.bunnings.com.au/"
|
||||
"https://www.realestate.com.au/",
|
||||
"https://www.commbank.com.au/",
|
||||
"https://my.gov.au/",
|
||||
"https://www.seek.com.au/",
|
||||
"https://www.woolworths.com.au/",
|
||||
"https://www.bunnings.com.au/",
|
||||
"https://www.coles.com.au/",
|
||||
"https://www.bom.gov.au/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/BD/Default/Dhaka.json
Normal file
50
data/regions/BD/Default/Dhaka.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Bangladesh (Dhaka)",
|
||||
"google_module": {
|
||||
"base_lat": 23.8103,
|
||||
"base_lon": 90.4125,
|
||||
"lang_params": "hl=en-BD&gl=BD",
|
||||
"valid_url_suffix": "com.bd"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.prothomalo.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33166",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30480",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44977",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65717",
|
||||
"https://bangladesh.gov.bd/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20349",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38302",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17670",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21568",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11987",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52530",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59384",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64512",
|
||||
"https://www.bdnews24.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41340",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91787",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76275",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13577",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47297",
|
||||
"https://www.thedailystar.net/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11087",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55599",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33837",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74887",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32970",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3315",
|
||||
"https://www.bb.org.bd/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30790",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11232"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.prothomalo.com/",
|
||||
"https://www.bb.org.bd/",
|
||||
"https://www.bdnews24.com/",
|
||||
"https://bangladesh.gov.bd/",
|
||||
"https://www.thedailystar.net/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/BG/Default/Sofia.json
Normal file
52
data/regions/BG/Default/Sofia.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"region_name": "Bulgaria - Sofia",
|
||||
"google_module": {
|
||||
"base_lat": 42.6977,
|
||||
"base_lon": 23.3219,
|
||||
"lang_params": "hl=bg&gl=BG",
|
||||
"valid_url_suffix": "bg"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=37868",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=19963",
|
||||
"https://www.btvnovinite.bg/",
|
||||
"https://www.uni-sofia.bg/",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=92628",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=90448",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=74957",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=59613",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=80978",
|
||||
"https://www.gov.bg/",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=92091",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=34424",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=77011",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=37563",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=95348",
|
||||
"https://www.bdz.bg/",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=55985",
|
||||
"https://www.nra.bg/",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=1758",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=43907",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=1937",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=61784",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=50233",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=84113",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=12216",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=87297",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=15643",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=72393",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=86275",
|
||||
"https://bg.wikipedia.org/wiki/Special:Random?r=36622"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.bg/",
|
||||
"https://www.nra.bg/",
|
||||
"https://www.uni-sofia.bg/",
|
||||
"https://www.btvnovinite.bg/",
|
||||
"https://www.bnb.bg/",
|
||||
"https://www.bdz.bg/",
|
||||
"https://www.vivacom.bg/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,39 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.cbc.ca/news/canada/vegetable-prices-canada-9.7173027?cmp=rss",
|
||||
"https://www.rbcroyalbank.com/",
|
||||
"https://www.theweathernetwork.com/ca",
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://www.cbc.ca/news/entertainment/the-devil-wears-prada-2-photo-scroller-9.7174459?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/ottawa/4-day-office-return-for-global-affairs-canada-workers-delayed-due-to-space-issues-9.7174828?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/manitoba/blizzard-warning-freezing-rain-storm-manitoba-9.7174365?cmp=rss",
|
||||
"https://www.cbc.ca/news/world/ntsb-laguardia-crash-preliminary-report-fire-truck-stop-stop-stop-9.7175074?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/flight-cancellations-strait-of-hormuz-9.7173742?cmp=rss",
|
||||
"https://www.cbc.ca/news/politics/cbc-president-marie-philippe-bouchard-committee-9.7174302?cmp=rss",
|
||||
"https://www.cbc.ca/news/world/lebanon-paramedics-strike-9.7173448?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/newfoundland-labrador/andrea-barbour-bullying-9.7174865?cmp=rss",
|
||||
"https://www.utoronto.ca/",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.cbc.ca/news/politics/carney-u-s-ambassador-wiseman-9.7174897?cmp=rss",
|
||||
"https://www.cbc.ca/news/politics/mark-carney-ethics-blind-trust-9.7174747?cmp=rss",
|
||||
"https://www.cbc.ca/news/entertainment/heated-rivalry-peabody-9.7174978?cmp=rss",
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61224",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74838",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43509",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46038",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97412",
|
||||
"https://www.td.com/",
|
||||
"https://www.cbc.ca/news/politics/carney-liquor-ban-9.7174723?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/montreal/smell-montreal-fire-9.7174378?cmp=rss",
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://www.cbc.ca/news/canada/nova-scotia/nova-scotia-mental-health-crisis-9.7171701?cmp=rss"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85317",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3370",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52666",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74529",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19060",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55827",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20145",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85921",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67933",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58072",
|
||||
"https://www.theweathernetwork.com/ca",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83485",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48538",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30258",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67528",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=39461",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94778",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80928",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59186",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82155",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80307",
|
||||
"https://www.cra-arc.gc.ca/"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.utoronto.ca/",
|
||||
"https://www.theweathernetwork.com/ca",
|
||||
"https://www.td.com/",
|
||||
"https://www.rbcroyalbank.com/",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.theweathernetwork.com/ca"
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://www.canada.ca/en.html"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,39 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.cbc.ca/news/canada/nova-scotia/nova-scotia-mental-health-crisis-9.7171701?cmp=rss",
|
||||
"https://www.utoronto.ca/",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.cbc.ca/news/politics/mark-carney-ethics-blind-trust-9.7174747?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/flight-cancellations-strait-of-hormuz-9.7173742?cmp=rss",
|
||||
"https://www.cbc.ca/news/entertainment/the-devil-wears-prada-2-photo-scroller-9.7174459?cmp=rss",
|
||||
"https://www.rbcroyalbank.com/",
|
||||
"https://www.cbc.ca/news/canada/montreal/smell-montreal-fire-9.7174378?cmp=rss",
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://www.cbc.ca/news/canada/manitoba/blizzard-warning-freezing-rain-storm-manitoba-9.7174365?cmp=rss",
|
||||
"https://www.cbc.ca/news/politics/cbc-president-marie-philippe-bouchard-committee-9.7174302?cmp=rss",
|
||||
"https://www.cbc.ca/news/politics/carney-liquor-ban-9.7174723?cmp=rss",
|
||||
"https://www.cbc.ca/news/world/ntsb-laguardia-crash-preliminary-report-fire-truck-stop-stop-stop-9.7175074?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/ottawa/4-day-office-return-for-global-affairs-canada-workers-delayed-due-to-space-issues-9.7174828?cmp=rss",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51978",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37629",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87051",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12910",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29165",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45015",
|
||||
"https://www.td.com/",
|
||||
"https://www.cbc.ca/news/canada/vegetable-prices-canada-9.7173027?cmp=rss",
|
||||
"https://www.cbc.ca/news/world/lebanon-paramedics-strike-9.7173448?cmp=rss",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13774",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40917",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36814",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43132",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73221",
|
||||
"https://www.amazon.ca/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48933",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43674",
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50359",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25632",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5405",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=92779",
|
||||
"https://www.theweathernetwork.com/ca",
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://www.cbc.ca/news/politics/carney-u-s-ambassador-wiseman-9.7174897?cmp=rss",
|
||||
"https://www.cbc.ca/news/canada/newfoundland-labrador/andrea-barbour-bullying-9.7174865?cmp=rss",
|
||||
"https://www.cbc.ca/news/entertainment/heated-rivalry-peabody-9.7174978?cmp=rss"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65596",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17190",
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2131",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84967",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79512",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46194",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38542",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38358"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://www.cra-arc.gc.ca/",
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://www.utoronto.ca/",
|
||||
"https://www.theweathernetwork.com/ca",
|
||||
"https://www.canada.ca/en.html",
|
||||
"https://www.td.com/",
|
||||
"https://www.rbcroyalbank.com/",
|
||||
"https://www.amazon.ca/",
|
||||
"https://www.theweathernetwork.com/ca"
|
||||
"https://www.canadapost-postescanada.ca/",
|
||||
"https://www.cra-arc.gc.ca/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/DE/BE/Berlin.json
Normal file
55
data/regions/DE/BE/Berlin.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "Germany - Berlin",
|
||||
"google_module": {
|
||||
"base_lat": 52.52,
|
||||
"base_lon": 13.405,
|
||||
"lang_params": "hl=de-DE&gl=DE",
|
||||
"valid_url_suffix": "de"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.dwd.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=35597",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=30227",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=57122",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=8275",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=56790",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=91051",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=36000",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=96792",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=86094",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.edeka.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=90828",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=10772",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=47819",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=17696",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=70671",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=32496",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=40227",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=29212",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=30124",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=28120",
|
||||
"https://www.stepstone.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=69257",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=51298",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=64004",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=83996",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=23243",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=80287"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.edeka.de/",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.rewe.de/",
|
||||
"https://www.immobilienscout24.de/",
|
||||
"https://www.stepstone.de/",
|
||||
"https://www.obi.de/",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://www.dwd.de/",
|
||||
"https://www.bundesregierung.de/",
|
||||
"https://www.amazon.de/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/DE/BY/Nuremberg.json
Normal file
55
data/regions/DE/BY/Nuremberg.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "Germany - Bavaria (Nuremberg)",
|
||||
"google_module": {
|
||||
"base_lat": 49.4521,
|
||||
"base_lon": 11.0767,
|
||||
"lang_params": "hl=de-DE&gl=DE",
|
||||
"valid_url_suffix": "de"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=2546",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=97033",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=64297",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=81470",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=34761",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=90156",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=38251",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=63033",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=67948",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=34257",
|
||||
"https://www.edeka.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=20022",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=76947",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=64041",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=53458",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=87544",
|
||||
"https://www.stepstone.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=61054",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=65308",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=17443",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=23621",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=1470",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=98333",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=19243",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=44514",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=31018",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://www.dwd.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=32036"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.obi.de/",
|
||||
"https://www.stepstone.de/",
|
||||
"https://www.rewe.de/",
|
||||
"https://www.dwd.de/",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.immobilienscout24.de/",
|
||||
"https://www.amazon.de/",
|
||||
"https://www.bundesregierung.de/",
|
||||
"https://www.edeka.de/",
|
||||
"https://www.sparkasse.de/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,39 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.tagesschau.de/wirtschaft/finanzen/infineon-chips-halbleiter-100.html",
|
||||
"https://www.tagesschau.de/ausland/europa/ukraine-regierung-parlament-100.html",
|
||||
"https://www.tagesschau.de/ausland/europa/tuerkei-socialmedia-verbot-100.html",
|
||||
"https://www.tagesschau.de/ausland/asien/iran-regime-100.html",
|
||||
"https://www.tagesschau.de/inland/gesellschaft/70-jahre-bundesnachrichtendienst-100.html",
|
||||
"https://www.amazon.de/",
|
||||
"https://www.tagesschau.de/wissen/forschung/nasa-teleskop-102.html",
|
||||
"https://www.tagesschau.de/ausland/europa/eugh-asylrecht-italien-albanien-100.html",
|
||||
"https://www.bundesregierung.de/",
|
||||
"https://www.tagesschau.de/ausland/europa/ukraine-russland-angriffe-152.html",
|
||||
"https://www.tagesschau.de/inland/regional/hessen/gesetzentwurf-existenzrecht-israel-100.html",
|
||||
"https://www.ebay.de/",
|
||||
"https://www.spiegel.de/",
|
||||
"https://www.tagesschau.de/wirtschaft/adac-pannenstatistik-e-autos-100.html",
|
||||
"https://www.tagesschau.de/inland/gesellschaft/pahlavi-berlin-100.html",
|
||||
"https://www.tagesschau.de/ausland/amerika/trump-droht-iran-hormus-100.html",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=91122",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=99900",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=79667",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=72133",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=30414",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=17476",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=62197",
|
||||
"https://www.tum.de/",
|
||||
"https://www.bahn.de/",
|
||||
"https://www.tagesschau.de/ausland/europa/daenemark-zugunglueck-102.html",
|
||||
"https://www.tagesschau.de/ausland/asien/libanon-israel-verhandlungen-100.html",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://www.tagesschau.de/newsticker/liveblog-iran-donnerstag-112.html"
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=86749",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=93748",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=48813",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=7354",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=49864",
|
||||
"https://www.ebay.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=11352",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=92211",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=77863",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=11941",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=66288",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=78353",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=95797",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=48228",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=8386",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=49518",
|
||||
"https://www.spiegel.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=44216",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=76703",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=15791"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.bundesregierung.de/",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.tum.de/",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://www.bahn.de/",
|
||||
"https://www.tum.de/",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.amazon.de/",
|
||||
"https://www.ebay.de/",
|
||||
"https://www.spiegel.de/"
|
||||
"https://www.spiegel.de/",
|
||||
"https://www.bahn.de/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/DE/NW/Aachen.json
Normal file
52
data/regions/DE/NW/Aachen.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"version": "3.5.2",
|
||||
"updated_at": "2026-06-01",
|
||||
"region_name": "Germany - Aachen",
|
||||
"google_module": {
|
||||
"base_lat": 50.7753,
|
||||
"base_lon": 6.0839,
|
||||
"lang_params": "hl=de&gl=DE",
|
||||
"valid_url_suffix": "de"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=46958",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=37852",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=60327",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=85686",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=99038",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=64896",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=37351",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=16660",
|
||||
"https://www.spiegel.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=81735",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=88527",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=23372",
|
||||
"https://www.tagesschau.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=47930",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=2000",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=48456",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=85473",
|
||||
"https://www.faz.net/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=27725",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=67397",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=90939",
|
||||
"https://www.zeit.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=17419",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=31227",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=15978",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=12123",
|
||||
"https://www.sueddeutsche.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=65946",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=40174",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=67382"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.sueddeutsche.de/",
|
||||
"https://www.faz.net/",
|
||||
"https://www.tagesschau.de/",
|
||||
"https://www.zeit.de/",
|
||||
"https://www.spiegel.de/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/DE/SN/Falkenstein.json
Normal file
55
data/regions/DE/SN/Falkenstein.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "Germany - Saxony (Falkenstein)",
|
||||
"google_module": {
|
||||
"base_lat": 50.4779,
|
||||
"base_lon": 12.3713,
|
||||
"lang_params": "hl=de-DE&gl=DE",
|
||||
"valid_url_suffix": "de"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=45566",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=67312",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=69886",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=63933",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=50911",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=52106",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=69965",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=99018",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=96288",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=13002",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=51586",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=76962",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=24041",
|
||||
"https://www.dwd.de/",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=63145",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=20894",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=96278",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=88107",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=44631",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=7629",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=26007",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=17691",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=30298",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=38769",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=28072",
|
||||
"https://de.wikipedia.org/wiki/Special:Random?r=51596",
|
||||
"https://www.stepstone.de/",
|
||||
"https://www.edeka.de/",
|
||||
"https://www.arbeitsagentur.de/"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.immobilienscout24.de/",
|
||||
"https://www.amazon.de/",
|
||||
"https://www.sparkasse.de/",
|
||||
"https://www.rewe.de/",
|
||||
"https://www.obi.de/",
|
||||
"https://www.bundesregierung.de/",
|
||||
"https://www.dwd.de/",
|
||||
"https://www.stepstone.de/",
|
||||
"https://www.arbeitsagentur.de/",
|
||||
"https://www.edeka.de/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,37 +8,45 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://elpais.com/opinion/2026-04-23/el-tipo-mas-idiota-de-internet-condenado-a-seis-meses-de-carcel.html",
|
||||
"https://www.agenciatributaria.es/",
|
||||
"https://elpais.com/internacional/2026-04-23/el-tribunal-penal-internacional-juzgara-al-expresidente-filipino-duterte-por-crimenes-contra-la-humanidad.html",
|
||||
"https://elpais.com/deportes/futbol/2026-04-23/lamine-yamal-con-una-lesion-muscular-le-dice-adios-a-la-temporada-pero-no-al-mundial.html",
|
||||
"https://elpais.com/babelia/2026-04-23/luc-delahaye-una-realidad-entre-el-documento-y-la-ficcion.html",
|
||||
"https://administracion.gob.es/",
|
||||
"https://cincodias.elpais.com/mercados-financieros/2026-04-23/digi-aplaza-su-salida-a-bolsa-ante-la-volatilidad-del-mercado-por-la-guerra-de-iran.html",
|
||||
"https://www.renfe.com/",
|
||||
"https://elpais.com/deportes/futbol/2026-04-22/el-elche-se-oxigena-y-derrota-a-un-atletico-de-bolo-veraniego.html",
|
||||
"https://elpais.com/gente/2026-04-23/enrique-de-inglaterra-pide-no-olvidar-la-guerra-de-ucrania-en-su-tercera-visita-al-pais.html",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=5608",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=47120",
|
||||
"https://www.agenciatributaria.es/",
|
||||
"https://www.amazon.es/",
|
||||
"https://elpais.com/espana/2026-04-23/el-rapto-de-los-90-minutos-en-miercoles-santo-resuelven-el-secuestro-del-gerente-de-un-salon-de-juegos-en-malaga.html",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=33998",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=13233",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=7186",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=8052",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=68099",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=52121",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=24000",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=23415",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=46998",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=29731",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=23700",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=59593",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=75445",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=99013",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=48314",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=38650",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=57691",
|
||||
"https://www.elcorteingles.es/",
|
||||
"https://elpais.com/espana/catalunya/2026-04-23/sant-jordi-sigue-creciendo-en-barcelona-con-buen-tiempo-colas-y-lluvia-de-polen.html",
|
||||
"https://elpais.com/tecnologia/2026-04-22/pedro-sanchez-alerta-del-colonialismo-silencioso-de-la-ia-y-pide-una-respuesta-global-ante-expertos-de-la-onu.html",
|
||||
"https://www.zara.com/es/",
|
||||
"https://elpais.com/cultura/2026-04-23/cultura-estudia-hacer-obligatorios-los-gastos-de-envio-de-grandes-plataformas-online.html",
|
||||
"https://elpais.com/clima-y-medio-ambiente/2026-04-22/mas-alla-de-los-combustibles-fosiles-una-coalicion-dispuesta-a-avanzar.html",
|
||||
"https://elpais.com/salud-y-bienestar/el-medico-de-cerca/2026-04-22/sobrevivir-a-un-infarto-en-las-mejores-condiciones.html",
|
||||
"https://elpais.com/economia/2026-04-23/cuerpo-asegura-que-el-fondo-soberano-espana-crece-estara-listo-antes-de-julio.html",
|
||||
"https://www.santander.es/",
|
||||
"https://elpais.com/internacional/2026-04-23/ultima-hora-de-la-guerra-de-estados-unidos-e-israel-contra-iran-en-directo.html"
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=3762",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=55452",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=23403",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=74287",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=97366",
|
||||
"https://es.wikipedia.org/wiki/Special:Random?r=23617"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.zara.com/es/",
|
||||
"https://www.elcorteingles.es/",
|
||||
"https://administracion.gob.es/",
|
||||
"https://www.agenciatributaria.es/",
|
||||
"https://www.santander.es/",
|
||||
"https://www.renfe.com/",
|
||||
"https://www.amazon.es/",
|
||||
"https://www.zara.com/es/",
|
||||
"https://www.elcorteingles.es/"
|
||||
"https://www.santander.es/",
|
||||
"https://www.renfe.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,37 +8,45 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-derri%C3%A8re-l-image-en-rdc-les-veuves-de-soldats-dans-la-pr%C3%A9carit%C3%A9",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-guerre-en-ukraine-un-pr%C3%AAt-de-90-milliards-d-euros-pr%C3%AAt-%C3%A0-%C3%AAtre-d%C3%A9bloqu%C3%A9",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-%C3%A9tats-unis-le-secr%C3%A9taire-%C3%A0-la-marine-limog%C3%A9-en-plein-conflit-avec-l-iran",
|
||||
"https://www.sorbonne-universite.fr/",
|
||||
"https://www.amazon.fr/",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=51937",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=61540",
|
||||
"https://www.cdiscount.com/",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-l-iran-maintient-son-emprise-sur-ormuz-incertitudes-sur-la-tr%C3%AAve",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-ukraine-un-pr%C3%AAt-quasi-d%C3%A9bloqu%C3%A9-zelensky-retrouve-les-dirigeants-europ%C3%A9ens-%C3%A0-chypre",
|
||||
"https://www.france24.com/fr/france/20260423-liban-isra%C3%ABl-les-pays-r%C3%A9gion-moyen-orient-doivent-participer-n%C3%A9gociations-plaide-macron-%C3%A9tats-unis-washington",
|
||||
"https://www.france24.com/fr/%C3%A9missions/politique/20260423-guerre-au-moyen-orient-la-fin-du-quoiqu-il-en-co%C3%BBte",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-liban-quels-sont-les-pouvoirs-et-les-limites-de-la-finul",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-le-b%C3%A9nin-mise-sur-son-histoire-pour-d%C3%A9velopper-le-tourisme",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-%C3%A0-montauban-hommage-national-%C3%A0-florian-montorio-casque-bleu-fran%C3%A7ais-tu%C3%A9-au-liban",
|
||||
"https://www.france24.com/fr/%C3%A9missions/le-d%C3%A9bat/20260423-orban-hors-jeu-zelensky-gagnant",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-gaza-des-familles-pleurent-leurs-proches-tu%C3%A9s-dans-une-frappe-nocturne",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=64",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=64731",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=93588",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=9299",
|
||||
"https://www.impots.gouv.fr/",
|
||||
"https://www.france24.com/fr/moyen-orient/20260423-crise-alimentaire-pourquoi-le-plan-de-l-onu-pour-un-corridor-%C3%A0-ormuz-pi%C3%A9tine-s%C3%A9curit%C3%A9-engrais-iran",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-amal-khalil-tu%C3%A9e-dans-une-frappe-isra%C3%A9lienne-dans-le-sud-du-liban",
|
||||
"https://www.service-public.fr/",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=78195",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=68800",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=82565",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=10230",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=25897",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=39058",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=250",
|
||||
"https://www.amazon.fr/",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=12273",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=95326",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=48759",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=12985",
|
||||
"https://www.sncf.com/",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=50712",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=44945",
|
||||
"https://www.credit-agricole.fr/",
|
||||
"https://www.france24.com/fr/vid%C3%A9o/20260423-paris-le-l%C3%A9gendaire-orient-express-%C3%A0-l-honneur-au-mus%C3%A9e-des-arts-d%C3%A9coratifs"
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=9625",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=78041",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=24130",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=12328",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=55449",
|
||||
"https://fr.wikipedia.org/wiki/Special:Random?r=58183"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.amazon.fr/",
|
||||
"https://www.service-public.fr/",
|
||||
"https://www.impots.gouv.fr/",
|
||||
"https://www.cdiscount.com/",
|
||||
"https://www.sncf.com/",
|
||||
"https://www.sorbonne-universite.fr/",
|
||||
"https://www.credit-agricole.fr/",
|
||||
"https://www.sncf.com/",
|
||||
"https://www.amazon.fr/",
|
||||
"https://www.cdiscount.com/"
|
||||
"https://www.impots.gouv.fr/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,37 +8,45 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://hk.news.yahoo.com/%E5%8F%8D%E4%BF%AE%E4%BE%8B%E8%A2%AB%E6%8D%95%E8%80%85%E6%93%9A%E5%A0%B1%E8%B5%B4%E8%A1%9B%E8%A9%A9%E9%9B%85%E5%88%86%E4%BA%AB%E6%9C%83%E5%BE%8C%E7%8D%B2%E6%92%A4%E6%8E%A7-%E4%BF%9D%E5%AE%89%E5%B1%80-%E8%A1%8C%E5%8B%95%E7%B4%B0%E7%AF%80%E4%B8%8D%E4%BE%BF%E5%85%AC%E9%96%8B-%E6%9B%B4%E6%96%B0-042322551.html",
|
||||
"https://www.hko.gov.hk/",
|
||||
"https://hk.news.yahoo.com/%E4%BC%8A%E6%9C%97%E5%AE%A3%E7%A8%B1%E4%B8%8D%E6%9C%83%E9%96%8B%E6%94%BE%E8%8D%B7%E8%8E%AB%E8%8C%B2%E6%B5%B7%E5%B3%BD-%E9%99%A4%E9%9D%9E%E7%BE%8E%E5%9C%8B%E5%81%9C%E6%AD%A2%E5%B0%81%E9%8E%96-042002100.html",
|
||||
"https://hk.news.yahoo.com/%E6%B6%88%E9%98%B2%E6%8A%AB%E9%9C%B2eas%E7%99%BC%E8%AD%A6%E7%A4%BA%E9%A0%88%E6%99%821%E5%8F%A5%E9%90%98-%E5%B0%8D%E6%80%A5%E9%80%9F%E6%83%A1%E5%8C%96%E7%81%AB%E5%8B%A2%E4%B8%8D%E9%81%A9%E5%90%88-094323720.html",
|
||||
"https://hk.news.yahoo.com/%E4%BC%8A%E6%9C%97%E9%9D%A9%E5%91%BD%E8%A1%9B%E9%9A%8A%E7%82%AE%E8%89%87%E8%A5%B2%E6%93%8A%E9%98%BF%E6%9B%BC%E5%A4%96%E6%B5%B7%E8%B2%A8%E6%AB%83%E8%BC%AA-133503559.html",
|
||||
"https://hk.news.yahoo.com/%E5%85%A5%E5%A2%83%E8%99%95%E6%89%93%E6%93%8A%E9%BB%91%E5%B7%A5%E5%A4%96%E8%B3%A3%E5%93%A1%E6%8B%9812%E4%BA%BA-%E5%8C%85%E6%8B%AC4%E6%B8%AF%E4%BA%BA%E6%B6%89%E5%87%BA%E7%A7%9F%E5%B8%B3%E8%99%9F%E6%88%96-%E6%B4%BE%E5%96%AE-%E8%AC%80%E5%88%A9-072553084.html",
|
||||
"https://www.hktvmall.com/",
|
||||
"https://www.gov.hk/",
|
||||
"https://hk.news.yahoo.com/%E5%9D%A6%E5%B0%9A%E5%B0%BC%E4%BA%9E2025%E5%B9%B4%E9%81%B8%E8%88%89%E6%9A%B4%E5%8A%9B%E9%A0%BB%E5%82%B3-%E6%94%BF%E5%BA%9C%E8%AA%BF%E6%9F%A5%E7%A8%B1518%E6%AD%BB-140504774.html",
|
||||
"https://hk.news.yahoo.com/%E8%B3%B4%E7%B8%BD%E7%B5%B1%E5%87%BA%E8%A8%AA%E5%8F%97%E9%98%BB-%E7%BE%8E%E6%89%B9%E4%B8%AD%E5%9C%8B%E6%81%90%E5%9A%87%E9%9D%9E%E6%B4%B2%E5%9C%8B%E5%AE%B6-072003045.html",
|
||||
"https://hk.news.yahoo.com/%E4%BC%8A%E6%9C%97%E5%96%8A%E8%A9%B1-%E7%BE%8E%E5%9C%8B%E4%B8%8D%E8%A7%A3%E5%B0%81%E9%8E%96%E5%B0%B1%E4%B8%8D%E9%96%8B%E8%8D%B7%E8%8E%AB%E8%8C%B2%E6%B5%B7%E5%B3%BD-055002739.html",
|
||||
"https://www.police.gov.hk/",
|
||||
"https://hk.news.yahoo.com/%E4%BB%A5%E9%BB%8E%E8%8F%AF%E5%BA%9C%E5%86%8D%E6%9C%83%E8%AB%87-%E8%B2%9D%E9%AD%AF%E7%89%B9%E7%9B%BC%E5%BB%B6%E5%81%9C%E7%81%AB%E5%8D%94%E8%AD%B0-060502345.html",
|
||||
"https://www.hku.hk/",
|
||||
"https://hk.news.yahoo.com/%E7%BE%8E%E5%9C%8B%E8%B2%A1%E9%95%B7%E8%B2%9D%E6%A3%AE%E7%89%B9%E7%82%BA%E5%BB%B6%E9%95%B7%E4%BF%84%E7%BE%85%E6%96%AF%E7%9F%B3%E6%B2%B9%E5%88%B6%E8%A3%81%E8%B1%81%E5%85%8D%E8%BE%AF%E8%AD%B7-040502929.html",
|
||||
"https://www.mtr.com.hk/",
|
||||
"https://hk.news.yahoo.com/%E6%88%BF%E5%A7%94%E6%9C%83%E9%A6%96%E6%AC%A1%E5%90%8C%E6%AD%A5%E6%8E%A8%E5%B1%85%E5%B1%8B-%E7%B6%A0%E7%BD%AE%E5%B1%85-%E7%99%BD%E5%B1%85%E4%BA%8C-4-30%E8%B5%B7%E6%8E%A5%E5%8F%97%E7%94%B3%E8%AB%8B-200000762.html",
|
||||
"https://hk.news.yahoo.com/%E8%8B%B1%E5%9C%8B%E6%94%BF%E5%BA%9C%E7%B8%AE%E6%B8%9B%E8%B5%A4%E5%AD%97%E6%9C%89%E6%88%90%E6%95%88-%E5%B0%88%E5%AE%B6%E8%AD%A6%E5%91%8A%E4%B8%AD%E6%9D%B1%E6%88%B0%E7%88%AD%E6%81%90%E6%8E%A8%E5%8D%87%E8%88%89%E5%82%B5%E6%88%90%E6%9C%AC-132005020.html",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=5412",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=82773",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=45058",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=17461",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=12373",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=77053",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=24924",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=20110",
|
||||
"https://www.hsbc.com.hk/",
|
||||
"https://hk.news.yahoo.com/%E6%B6%89%E4%BB%A5%E8%AA%A4%E5%B0%8E%E6%89%8B%E6%B3%95%E9%8A%B7%E5%94%AE%E4%B8%AD%E8%97%A5%E6%9D%90-39%E6%AD%B2%E6%97%BA%E8%A7%92-%E8%97%A5%E6%88%BF%E5%BA%97%E5%93%A1%E8%A2%AB%E6%8D%95-200000849.html",
|
||||
"https://hk.news.yahoo.com/%E4%BC%8A%E6%9C%97%E5%AE%98%E5%93%A1-%E8%8D%B7%E8%8E%AB%E8%8C%B2%E6%B5%B7%E5%B3%BD%E9%A6%96%E6%89%B9%E9%81%8E%E8%B7%AF%E8%B2%BB%E6%94%B6%E5%85%A5%E5%B7%B2%E5%85%A5%E5%BA%AB-115003587.html",
|
||||
"https://hk.news.yahoo.com/%E7%BE%8E%E5%9C%8B%E4%B8%8D%E8%A7%A3%E5%B0%81%E4%BC%8A%E6%9C%97%E4%B8%8D%E9%96%8B%E6%94%BE%E8%8D%B7%E8%8E%AB%E8%8C%B2-%E4%B8%AD%E6%9D%B1%E6%9C%80%E6%96%B0%E6%88%B0%E6%B3%81-%E6%AC%A1%E7%9C%8B-065002298.html"
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=66250",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=174",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=44358",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=71842",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=97322",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=55742",
|
||||
"https://www.mtr.com.hk/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=33956",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=60389",
|
||||
"https://www.police.gov.hk/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=87589",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=88859",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=34282",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=16156",
|
||||
"https://www.hko.gov.hk/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=71268",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=89020",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=22375",
|
||||
"https://www.gov.hk/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=57093",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=56614"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.hk/",
|
||||
"https://www.hko.gov.hk/",
|
||||
"https://www.police.gov.hk/",
|
||||
"https://www.hku.hk/",
|
||||
"https://www.hsbc.com.hk/",
|
||||
"https://www.mtr.com.hk/",
|
||||
"https://www.hktvmall.com/"
|
||||
"https://www.hko.gov.hk/",
|
||||
"https://www.gov.hk/",
|
||||
"https://www.police.gov.hk/",
|
||||
"https://www.hktvmall.com/",
|
||||
"https://www.hku.hk/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/ID/Default/Jakarta.json
Normal file
50
data/regions/ID/Default/Jakarta.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Indonesia (Jakarta)",
|
||||
"google_module": {
|
||||
"base_lat": -6.2088,
|
||||
"base_lon": 106.8456,
|
||||
"lang_params": "hl=id-ID&gl=ID",
|
||||
"valid_url_suffix": "co.id"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=72882",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=36565",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=76119",
|
||||
"https://www.antaranews.com/",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=98126",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=36985",
|
||||
"https://www.kompas.com/",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=83818",
|
||||
"https://www.bi.go.id/",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=71029",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=36844",
|
||||
"https://www.kominfo.go.id/",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=62628",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=49788",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=51367",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=36562",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=65140",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=30450",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=40281",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=99848",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=90074",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=58260",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=37343",
|
||||
"https://www.setneg.go.id/",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=81942",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=61085",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=23365",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=18194",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=2713",
|
||||
"https://id.wikipedia.org/wiki/Special:Random?r=17835"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.kompas.com/",
|
||||
"https://www.setneg.go.id/",
|
||||
"https://www.kominfo.go.id/",
|
||||
"https://www.antaranews.com/",
|
||||
"https://www.bi.go.id/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/IN/Default/Delhi.json
Normal file
50
data/regions/IN/Default/Delhi.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "India (Delhi)",
|
||||
"google_module": {
|
||||
"base_lat": 28.6139,
|
||||
"base_lon": 77.209,
|
||||
"lang_params": "hl=en-IN&gl=IN",
|
||||
"valid_url_suffix": "co.in"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.pib.gov.in/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28461",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57900",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69686",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59607",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36370",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22473",
|
||||
"https://www.rbi.org.in/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90043",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54337",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2969",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77637",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74545",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88805",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23601",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51696",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34869",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=92655",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19212",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18212",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84503",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36166",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52370",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68992",
|
||||
"https://www.thehindu.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12023",
|
||||
"https://www.india.gov.in/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40866",
|
||||
"https://timesofindia.indiatimes.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7624"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.rbi.org.in/",
|
||||
"https://www.thehindu.com/",
|
||||
"https://www.pib.gov.in/",
|
||||
"https://www.india.gov.in/",
|
||||
"https://timesofindia.indiatimes.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/JP/Default/Osaka.json
Normal file
50
data/regions/JP/Default/Osaka.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Japan (Osaka)",
|
||||
"google_module": {
|
||||
"base_lat": 34.6937,
|
||||
"base_lon": 135.5023,
|
||||
"lang_params": "hl=ja&gl=JP",
|
||||
"valid_url_suffix": "co.jp"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=72346",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=75186",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=1215",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=45591",
|
||||
"https://www.nhk.or.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=45324",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=56321",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=80812",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=92629",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=27550",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=7674",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=72361",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=68190",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=77544",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=65357",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=76028",
|
||||
"https://www.jnto.go.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=46867",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=32142",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=50302",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=58811",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=27560",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=3544",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=57602",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=99009",
|
||||
"https://www.japan.go.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=24304",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=72966",
|
||||
"https://www.rakuten.co.jp/",
|
||||
"https://www.yahoo.co.jp/"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.yahoo.co.jp/",
|
||||
"https://www.japan.go.jp/",
|
||||
"https://www.nhk.or.jp/",
|
||||
"https://www.jnto.go.jp/",
|
||||
"https://www.rakuten.co.jp/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,32 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.rakuten.co.jp/",
|
||||
"https://www.smbc.co.jp/",
|
||||
"https://www.jreast.co.jp/",
|
||||
"https://www.mhlw.go.jp/",
|
||||
"https://www.u-tokyo.ac.jp/",
|
||||
"https://news.yahoo.co.jp/pickup/6577376?source=rss",
|
||||
"https://www.amazon.co.jp/",
|
||||
"https://news.yahoo.co.jp/pickup/6577374?source=rss",
|
||||
"https://www.japan.go.jp/",
|
||||
"https://news.yahoo.co.jp/pickup/6577369?source=rss",
|
||||
"https://news.yahoo.co.jp/pickup/6577372?source=rss",
|
||||
"https://news.yahoo.co.jp/pickup/6577377?source=rss",
|
||||
"https://news.yahoo.co.jp/pickup/6577363?source=rss",
|
||||
"https://www.yahoo.co.jp/",
|
||||
"https://news.yahoo.co.jp/pickup/6577375?source=rss",
|
||||
"https://news.yahoo.co.jp/pickup/6577370?source=rss"
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=42270",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=53094",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=33535",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=42422",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=90682",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=66170",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=9263",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=90864",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=97723",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=33946",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=16516",
|
||||
"https://www.smbc.co.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=93391",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=6686",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=56964",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=53274",
|
||||
"https://www.amazon.co.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=73961",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=13446",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=9539",
|
||||
"https://www.jreast.co.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=35377",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=85319",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=21975",
|
||||
"https://www.mhlw.go.jp/",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=30721",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=73943",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=35088",
|
||||
"https://ja.wikipedia.org/wiki/Special:Random?r=51954"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.yahoo.co.jp/",
|
||||
"https://www.japan.go.jp/",
|
||||
"https://www.mhlw.go.jp/",
|
||||
"https://www.u-tokyo.ac.jp/",
|
||||
"https://www.smbc.co.jp/",
|
||||
"https://www.jreast.co.jp/",
|
||||
"https://www.yahoo.co.jp/",
|
||||
"https://www.amazon.co.jp/",
|
||||
"https://www.rakuten.co.jp/"
|
||||
"https://www.rakuten.co.jp/",
|
||||
"https://www.amazon.co.jp/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/KH/Default/PhnomPenh.json
Normal file
50
data/regions/KH/Default/PhnomPenh.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Cambodia (Phnom Penh)",
|
||||
"google_module": {
|
||||
"base_lat": 11.5564,
|
||||
"base_lon": 104.9282,
|
||||
"lang_params": "hl=en-KH&gl=KH",
|
||||
"valid_url_suffix": "com.kh"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36812",
|
||||
"https://www.gov.kh/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13130",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62981",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42526",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43196",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43780",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82043",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34805",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35551",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34229",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75615",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14347",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12847",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62046",
|
||||
"https://www.akp.gov.kh/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62013",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3176",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15359",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42173",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48609",
|
||||
"https://www.khmertimeskh.com/",
|
||||
"https://www.nbc.gov.kh/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27836",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29435",
|
||||
"https://www.phnompenhpost.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43422",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34264",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99120",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60756"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.akp.gov.kh/",
|
||||
"https://www.nbc.gov.kh/",
|
||||
"https://www.khmertimeskh.com/",
|
||||
"https://www.phnompenhpost.com/",
|
||||
"https://www.gov.kh/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,29 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.kakao.com/",
|
||||
"https://www.yonhapnewstv.co.kr/news/MYH20260423204515tFg",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=70498",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=23014",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=79347",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=69227",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=98673",
|
||||
"https://www.coupang.com/",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=12504",
|
||||
"https://www.korea.kr/",
|
||||
"https://www.hometax.go.kr/",
|
||||
"https://www.yonhapnewstv.co.kr/news/MYH20260423205121tTD",
|
||||
"https://www.daum.net/",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=94568",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=15712",
|
||||
"https://www.kbstar.com/",
|
||||
"https://www.yonhapnewstv.co.kr/news/MYH20260423231345ZaH",
|
||||
"https://www.yonhapnewstv.co.kr/news/MYH20260423235458edp",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=22506",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=179",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=36874",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=26762",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=49813",
|
||||
"https://www.snu.ac.kr/",
|
||||
"https://www.yonhapnewstv.co.kr/news/MYH20260423211941Xe0",
|
||||
"https://www.naver.com/"
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=25968",
|
||||
"https://www.daum.net/",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=12855",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=78212",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=22965",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=71964",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=11190",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=19404",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=36603",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=99811",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=43673",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=3757",
|
||||
"https://ko.wikipedia.org/wiki/Special:Random?r=20204"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.korea.kr/",
|
||||
"https://www.hometax.go.kr/",
|
||||
"https://www.snu.ac.kr/",
|
||||
"https://www.kbstar.com/",
|
||||
"https://www.naver.com/",
|
||||
"https://www.daum.net/",
|
||||
"https://www.naver.com/",
|
||||
"https://www.coupang.com/",
|
||||
"https://www.kakao.com/"
|
||||
"https://www.kbstar.com/",
|
||||
"https://www.snu.ac.kr/",
|
||||
"https://www.kakao.com/",
|
||||
"https://www.korea.kr/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/LA/Default/Vientiane.json
Normal file
50
data/regions/LA/Default/Vientiane.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Laos (Vientiane)",
|
||||
"google_module": {
|
||||
"base_lat": 17.9757,
|
||||
"base_lon": 102.6331,
|
||||
"lang_params": "hl=en-LA&gl=LA",
|
||||
"valid_url_suffix": "la"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30146",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10321",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32402",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70150",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87575",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75068",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42082",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91691",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37092",
|
||||
"https://www.bol.gov.la/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94366",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50689",
|
||||
"https://kpl.gov.la/",
|
||||
"https://www.laotel.com/",
|
||||
"https://www.vientianetimes.org.la/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34421",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55867",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85810",
|
||||
"https://www.mof.gov.la/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78487",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41985",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69285",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20858",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52805",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94042",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29334",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2579",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97759",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3085",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65385"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.laotel.com/",
|
||||
"https://www.vientianetimes.org.la/",
|
||||
"https://www.mof.gov.la/",
|
||||
"https://kpl.gov.la/",
|
||||
"https://www.bol.gov.la/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/MM/Default/Yangon.json
Normal file
52
data/regions/MM/Default/Yangon.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"region_name": "Myanmar (Yangon)",
|
||||
"google_module": {
|
||||
"base_lat": 16.8409,
|
||||
"base_lon": 96.1735,
|
||||
"lang_params": "hl=en-MM&gl=MM",
|
||||
"valid_url_suffix": "com.mm"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88253",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80260",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90132",
|
||||
"https://www.cbmm.gov.mm/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73422",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91290",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74917",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69036",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91047",
|
||||
"https://www.microsoft.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29363",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77857",
|
||||
"https://www.apple.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68266",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52629",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18871",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35904",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43435",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50002",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98312",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69857",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=72683",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20499",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=9078",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=72954",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93401",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34189",
|
||||
"https://www.irrawaddy.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61060"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.apple.com/",
|
||||
"https://www.microsoft.com/",
|
||||
"https://www.moi.gov.mm/",
|
||||
"https://www.irrawaddy.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://www.mmtimes.com/",
|
||||
"https://www.cbmm.gov.mm/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/MN/Default/Ulaanbaatar.json
Normal file
52
data/regions/MN/Default/Ulaanbaatar.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"region_name": "Mongolia (Ulaanbaatar)",
|
||||
"google_module": {
|
||||
"base_lat": 47.8864,
|
||||
"base_lon": 106.9057,
|
||||
"lang_params": "hl=mn-MN&gl=MN",
|
||||
"valid_url_suffix": "mn"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=90018",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=59850",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=69262",
|
||||
"https://www.apple.com/",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=49613",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=77102",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=8210",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=73933",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=40923",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=66239",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=65683",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=15336",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=89219",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=30532",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=92589",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=46785",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=11104",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=79801",
|
||||
"https://montsame.mn/",
|
||||
"https://www.gov.mn/",
|
||||
"https://news.mn/",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=44840",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=81139",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=43622",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=89678",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=57610",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=9169",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=35674",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random?r=50358"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.mongolbank.mn/",
|
||||
"https://www.gov.mn/",
|
||||
"https://mn.wikipedia.org/wiki/Special:Random",
|
||||
"https://news.mn/",
|
||||
"https://www.apple.com/",
|
||||
"https://www.microsoft.com/",
|
||||
"https://montsame.mn/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/MO/Default/Macau.json
Normal file
52
data/regions/MO/Default/Macau.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"region_name": "Macau (澳门)",
|
||||
"google_module": {
|
||||
"base_lat": 22.1987,
|
||||
"base_lon": 113.5439,
|
||||
"lang_params": "hl=zh-HK&gl=MO",
|
||||
"valid_url_suffix": "com.mo"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=56623",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=37274",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=13643",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=47347",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=53580",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=17491",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=25122",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=37610",
|
||||
"https://www.gov.mo/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=14132",
|
||||
"https://www.ctm.net/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=13934",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=38858",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=20010",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=46495",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=57407",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=48670",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=63626",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=98163",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=22078",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=11314",
|
||||
"https://www.umac.mo/",
|
||||
"https://www.macau.gov.mo/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=5948",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=28251",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=33514",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=98850",
|
||||
"https://www.macaudailytimes.com.mo/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=38350",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=63135"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.umac.mo/",
|
||||
"https://www.macaudailytimes.com.mo/",
|
||||
"https://www.ctm.net/",
|
||||
"https://www.dsat.gov.mo/",
|
||||
"https://www.macau.gov.mo/",
|
||||
"https://www.bocmacau.com/",
|
||||
"https://www.gov.mo/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://news.google.com/rss/articles/CBMiwAFBVV95cUxOc1FQTHJHTkRtLVM2aWNhRm1oSHY0WHJOMFI3N1l0S0FBSEVQaXFDNUxEcmUwUmlMMWtBMThiMGhVdjItdzltUUJNRUx4RDBQSDFBZmtfaVZ0YXFRWlp1ZmtWQlR6amFZeDByZEhtMmMwZVV3ZHFqZG9JQy1QWHF2dEZlRTFmZFVFd3kydnpZajlVOXRMcFRUZGxlRmxQU2puZnU1TTVRdE80blB3OG1SSDd2MXZjNDdJZWZWel92YTQ?oc=5",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74127",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11699",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69493",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21803",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73965",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96524",
|
||||
"https://www.maybank2u.com.my/",
|
||||
"https://www.lazada.com.my/",
|
||||
"https://www.kwsp.gov.my/",
|
||||
"https://news.google.com/rss/articles/CBMipgFBVV95cUxOT3Z4R043SjdaTTY4blQzTGZxOUFQRmJldmhTaFAxc2M4TC1tMmFSeHFMWGNfWk1jQW9FcWk2cmRsUUg0S3ItTmJ6VTdMTEcxWVhxejI5eDk2elBiN25TanRWVFBlNkswQUNhSk9WS19MVDBjbldRQ1FiX2NKeXEzdVZnUVY3YkxncjNYWGgwUE1VbFN1Z2FSNG53UkJ3SHQwNTkzSU1R0gGrAUFVX3lxTE4xVlVPRFJYZkFYUUx6cGVuVi1lZEhHLWZVdnFlS2ZCNk9WbXNlVkp5RlZBdmF4dmhGWXBLbnJzV0E5eUY5d3c1dDZzT1pQMURZRzZUd3NnYWNHOGVLWk1UV2RTR0kxZkd2bEt2WGFOVlBnSzhBdDhuTE5IY1F1S0oyNFdEaFNmTGtEd3JZVXJXUkpkNFRGMmJvZFdsNnFlNmo4Q3UyM1BxRlJ6dw?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMinAFBVV95cUxQc0puNXJDNjJvaWRLSjRjSXUzQk1WVlVTRGZsOEVhSnlCQWI3U29hdGJVSXZySmRKbm9pR3h3cUtmUmxPVWV3bG81YUtZSUlQel9rUzFITFZTZkhfV1hOcExIdmdXMzQ1aXdfamlxUmFFeXJrMDJVVEN3RmQ1VlEtSlU4WDRneHZJcTBVNWtPV1d5UC14UjJSaUJrd1PSAaIBQVVfeXFMUHRqS2VRMVktbGtuQWlOeWxZQUdKRWtjdGZINms3M0VvUnYyYUtTVVdpN2c3UkZ0V19oVVNCY3RyZk11d2pxb3BxUWZRVXcwVzBLUWM0V1gxVUtMMFNlRjRJcG9HYmZlcGhHU2dJMG5xQzRzdjRaMVpGbEFSU2tNaTcyaUE2SlkwMHRlM3Y1NEFsRkJQRWhmbUlBbE85MnBFMzV3?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMi1AFBVV95cUxQcWFCUXVGSUhfVHFUUXpTeDNrUm5yYWpPZXlzMUZtSzFDX0ZJdzNyWmlnbmZ2bUpLSXFHUHcyOFRHbkJMSzB6bjJYWDYyd2s5U285X1JIakRzYWxvNGJpSk5Deld3Q3NuZTdjTGJObmV1X2M0TW1GM19Nb0ZIWndDbHc1bHU3S3FtdmhMQ1k3MG5rSFRFRVA2TkZzOWNxczdvb3plMDN2dS1jWEw5Z09TeXZmZ1dtMGxtX1pvMkVDWWFrM25lVG5zNmZ5Y0lEN2VSaXhSYw?oc=5",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42049",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59671",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75530",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15862",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36609",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25078",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22068",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75858",
|
||||
"https://www.pos.com.my/",
|
||||
"https://news.google.com/rss/articles/CBMiqgFBVV95cUxPZnVfanlkc0NjNWNyU2lCSGhPY2tZMmJLMklhdlBuc1JRY3I3ZlE3TWhqdkVxclFzX0tSa2xHZ1Y3WUlCdzdaR05SX2VScWFkaFFwT0ZXMjRRUkM4OVlQSXNfbkV1Y01wRVNVckVHZmY5UGNCdm13YlBzQkdsQ3ZJb3BMN1YxaXdsWlhaXzBaSUdfbzhQQ3NoRzNUbkRueDh1QjlKbU1NaEFUQQ?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMi7wFBVV95cUxQSERSOUhUWHFZeTZVQ2JsMlpta0dVWjRGR2xkVFN4M1pYMzExTndtLVllZVVxMTVTTkRhMnB1Qm50TFRxcEVMTXYxejMyZi1jckZwYTJ0MERIY0diR3J5aTBWbE11SXZILTFhc2EtaE93Q25INlptQUpGT3lFaXE5c1g3UHhxX0JSTjdOSHhoUFFvdUJfclNwZnpJOFB3VG5UU2lrN3pJeTFzWmRVS0hRWVN3dk5KRGhBTER3MU1ySVJNeDRaTmJtODJqdkhGWl9iUE5aVk5vX0RNZ2NoOHRjeE9aR3l0SEZta0pDVERnSQ?oc=5",
|
||||
"https://shopee.com.my/",
|
||||
"https://news.google.com/rss/articles/CBMimgFBVV95cUxNM0Fha3pYTVVEblg0dUJNYmtIZGdJdGFwa20tbUttRHNFNUMtQ0doMVJDZU5GYm0wLUkwaVpkMzZzM2lhcDNkaXlOMm5UckJvQjUyQ25URl9aMC1idm5pNDJCSm5xN3FKMXloREV6azNVZmt6WXg3TkQxa2JoaWdhSy1ZcU1ac251Ukt3TlE3SVpPVWxOSnJIMkpn0gGfAUFVX3lxTE9uT1dydUxaa1NWQk9rUFlGRTVZZFRSM0NqNURDMzRXRnJCTkZFTEZCdXkwd1lDdkVJaWo2M0dIVnprZ2ZjOTEzU3VneE8xV0pIMWZTOVlLSFo3N2UtZ19JMVZCWFVhRW5PeFFSNHI4MWNGXzJLOWRxRVY3WkREaENGeEVhM1dYVnViYU50WS1SQzB6Z3VzaEpHU0tzbVphWQ?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMirAFBVV95cUxNN1N5S3h1ZmlMcl9Zd01BYmRFd0N1Vi1aX1BUTFprR1pvSHF5VDZqWk9PUWJEYllScHFyX25qNnFWMFJfTmZoNjNwSTdUYmlDWnJPN2dsajJMbjhfam1WdGZ2bW45V1gxeGRpdTlFQ1RqdE5tbmU0ZVRibVE4S0JqRndVQmlvX3o5QkRDdFpfMXRsQ2hUQ2tmWm5QRnh1d0ZacWl2TlBKR19ybEVQ?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiZ0FVX3lxTE04VkZwSllHVjZXNWRvOW8zU3dCVVMzQUJ6OEJpY2NmdFZaRlhJTzhQWDYxNFZhMnVyVE9GMlZPOTFtbzZfd0g0el8zQkNEdU9BT3lQcmc3TldKTk5rYjEtdF9ZNG45WU0?oc=5",
|
||||
"https://www.cimbclicks.com.my/",
|
||||
"https://news.google.com/rss/articles/CBMiwAFBVV95cUxQd2tyWHRaY180eklwZHNXdXdZY0dfcnZGQ3ZTbktEVldDeE9KaGRHMHRlRUhXdXhUZzdNVlNjaXgzZTBHUW54Z1RqNnZKcGF2V21nTFhyTFdFS0Z6cVUzWDNrLXU5UmRZR2QxYjAzVjJ4QkhCZUUwZ2lzQVlNMkxxNGs0REkzVmFNSFNvczY3S25TN0hpV1JjYmptVGlxckIxeFRkNUp5ZnBraEh1SUNKTUVCRGx0TXcwa1AxVFkyY3M?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMifkFVX3lxTE5EOXcwZDBtWEZhNUdjUDczVGRXU2VVdUNsUGtVUl9hSHBTU21pNkI5YnlJWXVkOW5NaVgzWUJFUktxS2dKbk9CU2xqLWl1bnlCalJRUWFwLU1QTUVDMXBqM2o0dVJOMF9fWjcxTGZ1RlNlcWpxb0ljMVBYZ2tKZw?oc=5",
|
||||
"https://www.malaysia.gov.my/",
|
||||
"https://www.thestar.com.my/",
|
||||
"https://um.edu.my/",
|
||||
"https://news.google.com/rss/articles/CBMiqAFBVV95cUxQQjNRaVEwbkJuRUpEU1AyaTB3Y01QQm5TWFhLb0hyZVU2c0g4Y0huTnBuS0FtLVI0RnZKZ0J6aTdaSElFaFhUbDJ1NmZsUFYzTTU1TGNTRFh6T3l4VXVkWHdNSmt2aWtyYTlXem9HNDRwVVRqSHVXNVdJN3A5bTlTWHRONXJlczJSaExVb1ZURXlTWGVQOFE5a3NLMEtabkY5ZDFYeVR3UU4?oc=5",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60529",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=24425",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57457",
|
||||
"https://www.hasil.gov.my/",
|
||||
"https://news.google.com/rss/articles/CBMiugFBVV95cUxOdDFsd1RzdXlQSGVNTThONWdKaDROUzZwN0paQVNQNHN1Z20zd1lpUlVneVo0dUNfRDcyTEdXOFgzb3JCck0xT3JEMVFybXc5Ync1TFdHLXFvVlM4Si16ckk3RHF6U1BDOTh2LU1COC1paUcxWkgtTE9ZYnBPM0xMYnU4VlVoSTBPLVVSZ0Vwdi04V093d0NTeUUwT1FlNmxjcWZvWGZfdzdhcE5aTGNqbHdYUkZrQTdJM2c?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiywFBVV95cUxQQWJxZjduYVFWMk45SDdGX3Frc3ItZURydjE2a3NBTkh3YXU4S2FzUG9MV3dnSXY5STM5SjlKTk5JQXFWLXl2RXYyQVdiZjd3U1hhSk1xUzNscWJrUUczc1U1MHNrQzYwMDlkU2k1WFFhSG5uUnl2YlVEcWcyVHZKeTFqRkMxaE1HU296aTBNdGt0Q1BvOVN1b0NuX3RKOFczeDJXWE1USGJkU0xaOUFMMVNieng1dDlkMnhhVTNFY0dHNXhQbXNZMXJvNA?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMirgFBVV95cUxORXNSSDhJeXhuZ0Z0ZlM1ZGpwdlhJaWhiR0xObFljZ0NTV0tYUWp4S3VXZ0EtOWpSQ1dlb3RRcVdyWGl4NUxzWGRSbmREd1RGbDg1aFpmeHlhVVIxLTh6d09KWnFBVk9ER0MxSmN6MW9DZ1ZsMndRajNzMzBkV3hCbVdwbEZ0ZFBRLXdMbXZDLTZFdTZZeGNfQW9hNGhlc0R0ekpZek1qbmNST0pYRkHSAbMBQVVfeXFMTks1eWhUZngyTXFCSzFuYzhNZkFlcWhGUkEtbHhSLV9CV3BvTm1hdWJhUGF6UjJFNFRHZ3U5MDd2NU54b29LVUJsM0lrN2FocUI4OFFmXy03ajZfbk45aHZucFVUSUpSTXZRQjlVTWFWR2FaV25TQXAydV85Z3QwaFd2b2tJOWxnbGZrSDlFVU1TREFfUWRFaUZEVHlqUXJPMllYRzRCVHJPd1pyTkhZSGpZUUk?oc=5"
|
||||
"https://www.kwsp.gov.my/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33090",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=49261",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85060",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42206",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70995",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73057",
|
||||
"https://www.malaysia.gov.my/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63856"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.malaysia.gov.my/",
|
||||
"https://www.hasil.gov.my/",
|
||||
"https://www.kwsp.gov.my/",
|
||||
"https://um.edu.my/",
|
||||
"https://www.maybank2u.com.my/",
|
||||
"https://www.cimbclicks.com.my/",
|
||||
"https://www.thestar.com.my/",
|
||||
"https://shopee.com.my/",
|
||||
"https://www.lazada.com.my/",
|
||||
"https://www.pos.com.my/"
|
||||
"https://www.thestar.com.my/",
|
||||
"https://www.malaysia.gov.my/",
|
||||
"https://www.maybank2u.com.my/",
|
||||
"https://www.pos.com.my/",
|
||||
"https://www.hasil.gov.my/",
|
||||
"https://www.cimbclicks.com.my/",
|
||||
"https://um.edu.my/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/NG/Default/Lagos.json
Normal file
55
data/regions/NG/Default/Lagos.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "Nigeria - Lagos",
|
||||
"google_module": {
|
||||
"base_lat": 6.5244,
|
||||
"base_lon": 3.3792,
|
||||
"lang_params": "hl=en-NG&gl=NG",
|
||||
"valid_url_suffix": "com.ng"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58493",
|
||||
"https://www.firstbanknigeria.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63977",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75745",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93114",
|
||||
"https://www.vanguardngr.com/",
|
||||
"https://www.mtn.ng/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38171",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41280",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40137",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44384",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85265",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83338",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6333",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37684",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20218",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76776",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43",
|
||||
"https://www.airtel.com.ng/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11971",
|
||||
"https://www.punchng.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96160",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18965",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75016",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96874",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69680",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88244",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57974",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=39198",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87859"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.mtn.ng/",
|
||||
"https://www.nairaland.com/",
|
||||
"https://www.punchng.com/",
|
||||
"https://www.vanguardngr.com/",
|
||||
"https://guardian.ng/",
|
||||
"https://www.firstbanknigeria.com/",
|
||||
"https://www.konga.com/",
|
||||
"https://www.airtel.com.ng/",
|
||||
"https://www.gtbank.com/",
|
||||
"https://www.jumia.com.ng/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,37 +8,45 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.belastingdienst.nl/",
|
||||
"https://nos.nl/l/2611728",
|
||||
"https://www.ns.nl/",
|
||||
"https://nos.nl/l/2611737",
|
||||
"https://nos.nl/l/2611716",
|
||||
"https://nos.nl/l/2611732",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=56803",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=31720",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=28503",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=64088",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=86465",
|
||||
"https://www.buienradar.nl/",
|
||||
"https://nos.nl/l/2611731",
|
||||
"https://www.marktplaats.nl/",
|
||||
"https://nos.nl/l/2611710",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=66630",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=7353",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=74583",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=70054",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=66709",
|
||||
"https://www.ing.nl/",
|
||||
"https://nos.nl/l/2611745",
|
||||
"https://nos.nl/l/2611729",
|
||||
"https://nos.nl/l/2611696",
|
||||
"https://nos.nl/l/2611744",
|
||||
"https://nos.nl/l/2611738",
|
||||
"https://nos.nl/l/2611694",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=61084",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=23253",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=53057",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=71269",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=31904",
|
||||
"https://www.belastingdienst.nl/",
|
||||
"https://www.rijksoverheid.nl/",
|
||||
"https://www.bol.com/",
|
||||
"https://nos.nl/l/2611719",
|
||||
"https://nos.nl/l/2611725",
|
||||
"https://nos.nl/l/2611703"
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=49945",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=22871",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=5378",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=50902",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=31925",
|
||||
"https://www.ns.nl/",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=1816",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=91062",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=61513",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=81540",
|
||||
"https://nl.wikipedia.org/wiki/Special:Random?r=7840"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.rijksoverheid.nl/",
|
||||
"https://www.belastingdienst.nl/",
|
||||
"https://www.ing.nl/",
|
||||
"https://www.ns.nl/",
|
||||
"https://www.bol.com/",
|
||||
"https://www.belastingdienst.nl/",
|
||||
"https://www.marktplaats.nl/",
|
||||
"https://www.buienradar.nl/"
|
||||
"https://www.ing.nl/",
|
||||
"https://www.buienradar.nl/",
|
||||
"https://www.rijksoverheid.nl/",
|
||||
"https://www.bol.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/NP/Default/Kathmandu.json
Normal file
50
data/regions/NP/Default/Kathmandu.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Nepal (Kathmandu)",
|
||||
"google_module": {
|
||||
"base_lat": 27.7172,
|
||||
"base_lon": 85.324,
|
||||
"lang_params": "hl=en-NP&gl=NP",
|
||||
"valid_url_suffix": "com.np"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54690",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13284",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44173",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84845",
|
||||
"https://www.onlinekhabar.com/",
|
||||
"https://thehimalayantimes.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1082",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28962",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81698",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47706",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71942",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=26164",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48751",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18485",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76445",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38131",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43524",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55884",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=4815",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47034",
|
||||
"https://kathmandupost.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=95371",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1042",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91043",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82666",
|
||||
"https://nepal.gov.np/",
|
||||
"https://www.nrb.org.np/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25928",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18558",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3659"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://nepal.gov.np/",
|
||||
"https://www.nrb.org.np/",
|
||||
"https://kathmandupost.com/",
|
||||
"https://thehimalayantimes.com/",
|
||||
"https://www.onlinekhabar.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
51
data/regions/PH/Default/Manila.json
Normal file
51
data/regions/PH/Default/Manila.json
Normal file
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"region_name": "Philippines (Manila)",
|
||||
"google_module": {
|
||||
"base_lat": 14.5995,
|
||||
"base_lon": 120.9842,
|
||||
"lang_params": "hl=en-PH&gl=PH",
|
||||
"valid_url_suffix": "com.ph"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20533",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77203",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51538",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31981",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14515",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97448",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63279",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5894",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61883",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43523",
|
||||
"https://www.microsoft.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96968",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76383",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17944",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62013",
|
||||
"https://www.apple.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52188",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94421",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80690",
|
||||
"https://www.pna.gov.ph/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52608",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64301",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74200",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7418",
|
||||
"https://www.bsp.gov.ph/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25904",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55560",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38274",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36330"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.ph/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://www.microsoft.com/",
|
||||
"https://www.bsp.gov.ph/",
|
||||
"https://www.apple.com/",
|
||||
"https://www.pna.gov.ph/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/SA/Default/Riyadh.json
Normal file
50
data/regions/SA/Default/Riyadh.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Saudi Arabia (Riyadh)",
|
||||
"google_module": {
|
||||
"base_lat": 24.7136,
|
||||
"base_lon": 46.6753,
|
||||
"lang_params": "hl=ar-SA&gl=SA",
|
||||
"valid_url_suffix": "com.sa"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=74950",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=7609",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=76905",
|
||||
"https://www.spa.gov.sa/",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=73545",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=80538",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=32614",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=33789",
|
||||
"https://www.my.gov.sa/",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=60059",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=30018",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=21794",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=96934",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=40367",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=879",
|
||||
"https://www.arabnews.com/",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=8489",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=98169",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=82209",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=7107",
|
||||
"https://www.sama.gov.sa/",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=57375",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=91431",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=42006",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=61181",
|
||||
"https://www.saudigazette.com.sa/",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=79356",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=11923",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=14217",
|
||||
"https://ar.wikipedia.org/wiki/Special:Random?r=71711"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.my.gov.sa/",
|
||||
"https://www.sama.gov.sa/",
|
||||
"https://www.saudigazette.com.sa/",
|
||||
"https://www.arabnews.com/",
|
||||
"https://www.spa.gov.sa/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,38 +8,45 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.nus.edu.sg/",
|
||||
"https://www.channelnewsasia.com/sport/shanto-rahman-fire-bangladesh-seal-2-1-odi-series-win-over-new-zealand-6076636",
|
||||
"https://www.shopee.sg/",
|
||||
"https://www.channelnewsasia.com/business/electrolux-plans-about-1-billion-share-issue-tie-up-midea-in-north-america-shake-up-ops-6077066",
|
||||
"https://www.channelnewsasia.com/business/milan-tech-firm-bending-spoons-picks-banks-20-billion-us-listing-sources-say-6076741",
|
||||
"https://www.cpf.gov.sg/",
|
||||
"https://www.channelnewsasia.com/business/us-sets-preliminary-antidumping-duties-solar-imports-india-indonesia-and-laos-6077106",
|
||||
"https://www.channelnewsasia.com/world/trump-administration-marijuana-drug-medical-use-6076856",
|
||||
"https://www.channelnewsasia.com/business/microsoft-plans-first-voluntary-employee-buyout-cnbc-reports-6076806",
|
||||
"https://www.gov.sg/",
|
||||
"https://www.channelnewsasia.com/business/warner-bros-shareholders-back-us110-billion-merger-paramount-skydance-6076681",
|
||||
"https://www.channelnewsasia.com/asia/indonesia-not-impose-tariffs-strait-malacca-foreign-minister-sugiono-6076516",
|
||||
"https://www.channelnewsasia.com/business/in-two-amazon-units-builder-replaces-traditional-job-titles-6076801",
|
||||
"https://www.channelnewsasia.com/business/stocks-retreat-us-iran-peace-talks-stall-6076641",
|
||||
"https://www.dbs.com.sg/",
|
||||
"https://www.iras.gov.sg/",
|
||||
"https://www.channelnewsasia.com/world/ukraine-russia-war-european-union-loan-hungary-pipeline-6076921",
|
||||
"https://www.channelnewsasia.com/sport/miami-grand-prix-practice-extended-after-rule-changes-race-cancellations-6076656",
|
||||
"https://www.singpass.gov.sg/",
|
||||
"https://www.fairprice.com.sg/",
|
||||
"https://www.channelnewsasia.com/sport/coventry-chairman-king-shrugs-reports-linking-lampard-chelsea-return-6076911",
|
||||
"https://www.channelnewsasia.com/business/cretaceous-kraken-prowled-seas-during-age-dinosaurs-6077036",
|
||||
"https://www.channelnewsasia.com/sport/mclaren-will-have-completely-new-car-miami-gp-6076976"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20394",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=53675",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31850",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45630",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19182",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=57634",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23113",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73741",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81466",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=4142",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1388",
|
||||
"https://www.singpass.gov.sg/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6405",
|
||||
"https://www.dbs.com.sg/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74840",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96233",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87295",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10256",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43379",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45547",
|
||||
"https://www.nus.edu.sg/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69457",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22119",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54096",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10990",
|
||||
"https://www.cpf.gov.sg/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87516",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19434",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64384"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.sg/",
|
||||
"https://www.cpf.gov.sg/",
|
||||
"https://www.iras.gov.sg/",
|
||||
"https://www.singpass.gov.sg/",
|
||||
"https://www.nus.edu.sg/",
|
||||
"https://www.dbs.com.sg/",
|
||||
"https://www.gov.sg/",
|
||||
"https://www.nus.edu.sg/",
|
||||
"https://www.cpf.gov.sg/",
|
||||
"https://www.shopee.sg/",
|
||||
"https://www.singpass.gov.sg/",
|
||||
"https://www.iras.gov.sg/",
|
||||
"https://www.fairprice.com.sg/"
|
||||
]
|
||||
}
|
||||
|
||||
50
data/regions/TH/Default/Bangkok.json
Normal file
50
data/regions/TH/Default/Bangkok.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "Thailand (Bangkok)",
|
||||
"google_module": {
|
||||
"base_lat": 13.7563,
|
||||
"base_lon": 100.5018,
|
||||
"lang_params": "hl=th-TH&gl=TH",
|
||||
"valid_url_suffix": "co.th"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=10316",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=31076",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=63118",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=88621",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=69714",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=42932",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=39012",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=83805",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=87538",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=54904",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=23950",
|
||||
"https://www.set.or.th/",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=39850",
|
||||
"https://www.bot.or.th/",
|
||||
"https://www.bangkokpost.com/",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=29738",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=65937",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=58033",
|
||||
"https://www.thaigov.go.th/",
|
||||
"https://www.thairath.co.th/",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=57442",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=56746",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=93745",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=19139",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=18168",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=3320",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=16764",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=78066",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=31568",
|
||||
"https://th.wikipedia.org/wiki/Special:Random?r=89834"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.thaigov.go.th/",
|
||||
"https://www.set.or.th/",
|
||||
"https://www.bot.or.th/",
|
||||
"https://www.bangkokpost.com/",
|
||||
"https://www.thairath.co.th/"
|
||||
]
|
||||
}
|
||||
}
|
||||
53
data/regions/TR/Default/Istanbul.json
Normal file
53
data/regions/TR/Default/Istanbul.json
Normal file
@@ -0,0 +1,53 @@
|
||||
{
|
||||
"region_name": "Turkey (Istanbul)",
|
||||
"google_module": {
|
||||
"base_lat": 41.0082,
|
||||
"base_lon": 28.9784,
|
||||
"lang_params": "hl=tr-TR&gl=TR",
|
||||
"valid_url_suffix": "com.tr"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=85500",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=40425",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=98582",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=24704",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=51316",
|
||||
"https://www.garantibbva.com.tr/",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=63793",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=63036",
|
||||
"https://www.hepsiburada.com/",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=62012",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=54801",
|
||||
"https://www.ziraatbank.com.tr/",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=99186",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=73134",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=73785",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=7219",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=70545",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=82883",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=59031",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=94180",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=10175",
|
||||
"https://www.turkiye.gov.tr/",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=62521",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=71803",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=94055",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=7625",
|
||||
"https://www.hurriyet.com.tr/",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=76566",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=29803",
|
||||
"https://tr.wikipedia.org/wiki/Special:Random?r=58242"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.hurriyet.com.tr/",
|
||||
"https://www.ziraatbank.com.tr/",
|
||||
"https://www.garantibbva.com.tr/",
|
||||
"https://www.trendyol.com/",
|
||||
"https://www.sahibinden.com/",
|
||||
"https://www.hepsiburada.com/",
|
||||
"https://www.milliyet.com.tr/",
|
||||
"https://www.turkiye.gov.tr/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,41 +8,47 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.post.gov.tw/",
|
||||
"https://news.google.com/rss/articles/CBMi0gFBVV95cUxPZUdJQVZpMVdsS1ZIYzd2TkhpQkRPOUJmd3lIRC1PSWRpbDJZNHUxNlpwM2RMVHBUYjZWSzNNcTQtbEFhNHozTTBacWp3Mzl4d09YeGFha0ZxRkN0U01OZG5FeklFbUtEb0l1TW5SWWRNQ0JzcFp3TEVqUFdlRi01QnRQVlBLbEV3SVNyYWFBbGllTGdfcGc3VjYzNERGX0RpZFFZUkxtX09KMFM5TmZVeklPX0dMa3EydDgwUV9yUFgxaGZzM0JzNGQtWl9vRUpqWFE?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiZkFVX3lxTE1kdU8yNlI0c2NKSzFjdGlWNHk4MmFHQVZXRUJocGhQTlZrc2ZXTkVKYXBWUUZSUF9nNnhyeUE2ZV9IY3NvRWdLRDJrc1E0eWRrQXVaLW9MYzN3eTIzX2VjWEZQc1NCQdIBa0FVX3lxTFB4WWVBdXV0NjdZY2xfam5PLUQ4VDBZaUlwOTFlZ19fcG53dW9VbjVGakNUcGNkaUJnYjZpejBkd0hSQm1HcnYyUmpXUFg1V2E4cTYta093Z1AtSHY2S0s1VUFqRS12S3JKMU9Z?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiUkFVX3lxTE0yNkVPWlVSczlIUFRZMlBtVkNUMUJzb2FXVDFVQll4ajhFdlBjMlRWUk9MaE5hRWxlanVMaGtCM2tTYTZtYS0ybzE4ZlQ3bUVRalE?oc=5",
|
||||
"https://www.pchome.com.tw/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=33127",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=865",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=23445",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=87348",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=73265",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=61596",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=47862",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=34598",
|
||||
"https://www.cathaybk.com.tw/",
|
||||
"https://www.gov.tw/",
|
||||
"https://news.google.com/rss/articles/CBMiswNBVV95cUxPcDZmUHpyYmlLUkZSaGtGaW1qa1JBd2N6bnY0RTJBblg5WXlxVDYwYm9yQ0J3Zi1YV25RRmk0V1hyVmhTWUpWQ09sY2tJVkZ4azdnZml0SG9yRnZodWVZMHhHV3U2dmN0OEp4dk9PSWpOVEhjYmFBRVg4cU1xaVZiTU05dVBRRzJROG1HR1BtRmFFck1sWDd0TXhvZHRLT0lGZVk0QUJQUTBUVHJJeWxWWjBNaXg3MEUxUW54RkRxVlhmbkhPZmxNdkJqbkczeWJ1c3ZEVURmMDk0d1RYSlZqckNxSnFaMUVNbmstc0N2clhoTjBocmM5bmk4eUhuRVpsbnpyaEI2UEF1WDkxcTRUNy14YXdvVmpqVGtJQ3ZHUXhWdFF2aEQxQS1IU1h2N2dyWUxZU0h6ZXJfeDBsN09aY3YydUVTODlIV2N1Z3loSjNBVkRSWVVBS281TTVDTi00UlZYZ1RENFBPdFh4YTdsWUJPUmVKdUJodTlIUTR0Mm03Z3YzODN0dUgzbmZWY1U3RE5qZWdMOHdFTXRjY29SZXJUME5vTFVNdXRmQTZMSmVOZlk?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiUEFVX3lxTE0xdUpUQlNCUEdEeVdVYTg0ck1LYUw5Yll4OW5vTEZNTjRkQm5ROHlNMTJOdWE0czBLUjBxamlvNXIwMTdVei05M2hzY19BTk1M0gFWQVVfeXFMT1hVZEEyeWs4aHRTSzNKUGdfOUNqbUxYazJUMDN6RTJHYmhkU21fNTNnREliSG5WM3V3b0N0S3dkSTl2UGZ2Y19JUmRwWHJ3bGV0MzIyVmc?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMibkFVX3lxTFBHTmprcGlaR3I3TFlyUUhzZmFKQzZRYUFQXzhzR2dBVzJuQ1ZzU3c0T1ZMR2FRc3lkcTBFaThTdl92bWdhY3NBbFhOc01ZQ2pZc3l2bHUxT3BOOWcwMndYVFlZd0xYLU96bjVJOEdn?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiUEFVX3lxTE8wLWdBbXA4QVRlc2V2WE5rVTR2RE4zZVQweGZRSjdPNnBCclFoV1h0YkJZdkhkRElZdUtDQ0tBWVpPSzdvbjdqRXpuaTVET3ND?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiogFBVV95cUxOODRIaHhSWWx2UzBMMW83LUNid29ZTmFuYXgtZktVUWtJUFlzaWpOdTN2ZGZXTldlRUllTHJleGR2RFc0NjN1YVVyRC1VT0FuQjRIYmNreTFDdk0yaURzdHJ1SmdFRllCZEo0RWFWTkxzM2pDdWVDWDlETzBhRWRnVGlTT3hOUFo4MjYzaGRwb3cyeHJ2c3E1MHVrS0hTclBkWVE?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiWEFVX3lxTFBSWHMtZE5Ha1N0SGVMbWE0eHdFaV9aWktDNVpwWWZ2NmZYNU02N1RGVks5MXFYSWE2Yl9ZSkttRkZ6QWJ3azgzZl9LYzk2Ymx3bWpTRmFrZDA?oc=5",
|
||||
"https://www.momoshop.com.tw/",
|
||||
"https://www.dcard.tw/",
|
||||
"https://www.thsrc.com.tw/",
|
||||
"https://news.google.com/rss/articles/CBMiZkFVX3lxTE1xSXBsR2pKWXBZc0x4bUJxZWFEak04S25qaFI0Y3BLTnozc2Q3MzRHbWFCNUlZbVZDY0JzUVROTHJrWC1od2V0THVSb251bFdQeE15anltRnZ0NGNpc3MyVS1WeUlMd9IBa0FVX3lxTE1KWjRfMVBZN25ISHJLWGFLZGg1Rm1EMVFBMTZiMndKcmpSelVNSzJWU2NVazFMZnJHNmhxUWVzVkdNMDE2c05pb0RmZ2ZSUFZIbTNnbHNjYzU0eGZJbkRXOVRucHIxYnduazFz?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiYEFVX3lxTE11eVZ2Rlk5SEthZmRtanVXWmRrWXhGYXRVbEpmSTBfSjluLTBNSlpCV3BZQUhoXzVYSzd5OTh2V2lFV3dtSWlXUG9IS2NwZHFPREwxdnNJVkVzVDZfZDlUV9IBZkFVX3lxTE5xWG9UNHJiLVhqem1td1JvbEkzR1Zpc1ItMDNGOTNvZFhiYURBR2ZtREp6aFdqWUxCUHpKUWZmTlVYQ3M3bzdJUWhnLUhrNFBBdlMxQk9faHRGWkh6eU9TRjljV1Y0UQ?oc=5",
|
||||
"https://www.ntu.edu.tw/",
|
||||
"https://news.google.com/rss/articles/CBMi1wJBVV95cUxPREFTbWloRmVNY0lyQXlHMkZ6QmtCM2M1RGdzbk8zQXNmMzhlRTJ5UkxKNHBIZjZBS0Z4akkzN3NmRkRiaTB4cUUxQ0pOa3lzdG1rNXJsaHhnSFcxX2Y1SXhoRkU3di1LZ29GVEFraEtOLVpWSURtZlRyX0licU81VkhHdVBMckNTeDNZNFdsVTlQbC14cGthN3VER0JtZk13VDF4ZlhON1dZZFBqcHNxdkpycmFBc1d1ZTRWWV82S2RzQzE3SzhuMUFCb3UwMFZfWTBIU1JpXzRORS1PVEpCMzlmTmRfZVY0b2Rtelo1Znk1UkJ4VUhySzdOQjBjaDJaR3ppZkR2NGlrdzdtMDZqU0Mta0tuLXBzRk1YbG1jR3Vxd0loWlJ3YmhEdGYxMzk3WWtjWi1BN0NFMXhSTUltRHFrMll4N3hwWFpBWmxCLWhiUmhkTnBn?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiU0FVX3lxTFBDS2JaR3M3cjRLTHlMR1Y4U1IzNkkxM0I1aWY0S3B1ZDFkdUZWQlc3VC1nZndhQkUzRkJmZERvS1lsSG5lUXRUc3BqaTRPQVVFeG5v0gFYQVVfeXFMT2dUMTFLVHZpWWg0SE9XMWFwQnZhZ2lBLWUwbHhNTlhNbTZfc3ZUUF92QUlLTEpzTGlwS2t3Qi1WZmpHdWdMcG5zaHFmTmRPTmlpMDhQeS1wXw?oc=5",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=80983",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=58331",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=69643",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=72753",
|
||||
"https://tw.yahoo.com/",
|
||||
"https://news.google.com/rss/articles/CBMiZEFVX3lxTE9udVJJTVBBT1Z0ZFlmZXNpZFBnTDM3RmU0NkhVZnNNMEg5MHBrSHR4N2phUlZGNmhNQ1hubEM0MjljUmZrZkpyTDVNa1RDQ1YtY1Zha0diV29wUjhEbGdOeUhBMm7SAWpBVV95cUxQSlNFcy13NWd4Y2Nlck41Y0ZTTGhrWnlkalRCWm1RUm9ndkxkLUdUM1NHcFI4ZnZwWFdiR3RqNjVvVVM4UnkzbXJXbUhBRjl2UUVaNUFibGwwRTk1ZHhaSUx0aWVoLVNvc3hn?oc=5",
|
||||
"https://news.google.com/rss/articles/CBMiT0FVX3lxTE1WNGN4MEFiTjdScmQ0NDZxaDN5cUxQbmpFbnF1eHVJaXBfSlc0ekZTOUxrYkJzVVJVWUstRGI2ekVjajEzVU8zeUdVUjRBSUU?oc=5"
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=59261",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=26487",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=71751",
|
||||
"https://www.pchome.com.tw/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=72965",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=99554",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=15565",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=33720",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=84772",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=61158",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=69036",
|
||||
"https://www.post.gov.tw/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=52520",
|
||||
"https://www.gov.tw/",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=16400",
|
||||
"https://zh.wikipedia.org/wiki/Special:Random?r=68317"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.tw/",
|
||||
"https://www.post.gov.tw/",
|
||||
"https://www.ntu.edu.tw/",
|
||||
"https://tw.yahoo.com/",
|
||||
"https://www.cathaybk.com.tw/",
|
||||
"https://www.thsrc.com.tw/",
|
||||
"https://tw.yahoo.com/",
|
||||
"https://www.dcard.tw/",
|
||||
"https://www.ntu.edu.tw/",
|
||||
"https://www.momoshop.com.tw/",
|
||||
"https://www.pchome.com.tw/",
|
||||
"https://www.dcard.tw/"
|
||||
"https://www.post.gov.tw/",
|
||||
"https://www.pchome.com.tw/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,39 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.nhs.uk/",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://www.bbc.com/news/articles/cdrm8k7lzmko?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cgj09ny0dq6o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cp3lge56zxwo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/clyxlnzrq41o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/cy813gy08v2o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/c20qrg4dyr3o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/videos/c0q9k3lekn3o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/c98kz9pe01po?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/c86ezy3qvjno?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cr41yel6v4eo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/cly60l1e6nxo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cvgkwk9525zo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.ebay.co.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47409",
|
||||
"https://www.postoffice.co.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8287",
|
||||
"https://www.gov.uk/",
|
||||
"https://www.bbc.co.uk/iplayer/episode/m002t4vt?at_medium=RSS&at_campaign=rss",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13883",
|
||||
"https://www.barclays.co.uk/",
|
||||
"https://www.nationalrail.co.uk/",
|
||||
"https://www.bbc.com/news/articles/c5ywjn9zpyjo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.bbc.com/news/articles/c3r3pz82g58o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.postoffice.co.uk/"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34556",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13301",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44976",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66307",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45680",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2326",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75274",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76311",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75316",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13348",
|
||||
"https://www.nhs.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27226",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82884",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15500",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46362",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55498",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27073",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34139",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59044",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15906",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83814",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68030",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60498"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.uk/",
|
||||
"https://www.nhs.uk/",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://www.barclays.co.uk/",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.postoffice.co.uk/",
|
||||
"https://www.nationalrail.co.uk/",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.ebay.co.uk/"
|
||||
"https://www.ebay.co.uk/",
|
||||
"https://www.nhs.uk/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,39 +8,46 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.bbc.com/news/articles/cp3lge56zxwo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.barclays.co.uk/",
|
||||
"https://www.bbc.com/news/articles/c20qrg4dyr3o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/videos/c0q9k3lekn3o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/clyxlnzrq41o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.postoffice.co.uk/",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://www.bbc.com/news/articles/c5ywjn9zpyjo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/c3r3pz82g58o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cgj09ny0dq6o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/cr41yel6v4eo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.gov.uk/",
|
||||
"https://www.bbc.com/news/articles/cdrm8k7lzmko?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/c98kz9pe01po?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/cly60l1e6nxo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/sport/football/articles/cy813gy08v2o?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.nationalrail.co.uk/",
|
||||
"https://www.bbc.co.uk/iplayer/episode/m002t4vt?at_medium=RSS&at_campaign=rss",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8793",
|
||||
"https://www.postoffice.co.uk/",
|
||||
"https://www.nhs.uk/",
|
||||
"https://www.ebay.co.uk/",
|
||||
"https://www.bbc.com/news/articles/cvgkwk9525zo?at_medium=RSS&at_campaign=rss",
|
||||
"https://www.bbc.com/news/articles/c86ezy3qvjno?at_medium=RSS&at_campaign=rss"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52989",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10228",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97397",
|
||||
"https://www.gov.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76177",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90050",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91556",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88501",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19340",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81481",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94886",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97128",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96468",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3743",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35340",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68450",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29226",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14051",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79765",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32520",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80917",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=262",
|
||||
"https://www.barclays.co.uk/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6175",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=448",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40545"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.gov.uk/",
|
||||
"https://www.nhs.uk/",
|
||||
"https://www.ox.ac.uk/",
|
||||
"https://www.ebay.co.uk/",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.gov.uk/",
|
||||
"https://www.barclays.co.uk/",
|
||||
"https://www.postoffice.co.uk/",
|
||||
"https://www.nationalrail.co.uk/",
|
||||
"https://www.amazon.co.uk/",
|
||||
"https://www.ebay.co.uk/"
|
||||
"https://www.nhs.uk/",
|
||||
"https://www.nationalrail.co.uk/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/AZ/Phoenix.json
Normal file
55
data/regions/US/AZ/Phoenix.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Arizona (Phoenix)",
|
||||
"google_module": {
|
||||
"base_lat": 33.4484,
|
||||
"base_lon": -112.074,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16163",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77097",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22340",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60811",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34668",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20913",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33520",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79296",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63192",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=72567",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20863",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80696",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68434",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50480",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66233",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90579",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=72256",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69910",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61585",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75295",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81582",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21414",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85397",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25037",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=404"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.target.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.indeed.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
50
data/regions/US/CA/Fremont.json
Normal file
50
data/regions/US/CA/Fremont.json
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
"region_name": "US - California (Fremont)",
|
||||
"google_module": {
|
||||
"base_lat": 37.5485,
|
||||
"base_lon": -121.9886,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41834",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17075",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99571",
|
||||
"https://www.ca.gov/",
|
||||
"https://www.sfgate.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23236",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52251",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7277",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40950",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=26577",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71584",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=53033",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27546",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58673",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81838",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83367",
|
||||
"https://www.fremont.gov/",
|
||||
"https://www.bart.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37273",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44585",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81112",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=95070",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27681",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58271",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81119",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51506",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=89904",
|
||||
"https://www.mercurynews.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35061",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68637"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.mercurynews.com/",
|
||||
"https://www.bart.gov/",
|
||||
"https://www.fremont.gov/",
|
||||
"https://www.ca.gov/",
|
||||
"https://www.sfgate.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/CA/Irvine.json
Normal file
55
data/regions/US/CA/Irvine.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - California (Irvine)",
|
||||
"google_module": {
|
||||
"base_lat": 33.6846,
|
||||
"base_lon": -117.8265,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97773",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75640",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91127",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23471",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2119",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=47548",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88155",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10784",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78667",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99076",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81303",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38688",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21683",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96572",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98301",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64034",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3558",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14632",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15987",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=62577",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98137",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69480",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84820",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38526",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67730"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.walmart.com/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.chase.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.cnn.com/europe/live-news/russia-ukraine-war-news-04-18-23/index.html",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.npr.org/2026/04/23/g-s1-118440/up-first-newsletter-us-iran-john-phelan-trump-republican-democrat-midterm-fundraising-budget-reconciliation-ice",
|
||||
"https://www.cnn.com/2023/04/17/health/rise-type-2-diabetes-global-wellness/index.html",
|
||||
"https://www.cnn.com/2023/04/18/politics/mccarthy-biden-debt-ceiling/index.html",
|
||||
"https://www.cnn.com/travel/article/worlds-longest-cycling-tunnel/index.html",
|
||||
"https://www.cnn.com/2023/04/18/opinions/2024-presidential-election-alternative-voters-lieberman",
|
||||
"https://www.cnn.com/2023/04/18/us/benadryl-tiktok-challenge-teen-death-wellness/index.html",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/h_8d51e3ae2714edaa0dace837305d03b8",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/index.html",
|
||||
"https://www.cnn.com/cnn-underscored/reviews/mmmat-silicone-mats?iid=CNNUnderscoredHPcontainer",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97531",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3870",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5941",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54409",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29151",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cnn.com/2023/04/18/health/teen-misuse-adhd-meds-wellness/index.html",
|
||||
"https://www.npr.org/2026/04/23/nx-s1-5795829/peace-talks-between-us-and-iran-at-a-standstill-as-trump-extends-ceasefire",
|
||||
"https://www.usps.com/",
|
||||
"https://www.cnn.com/videos/politics/2023/04/18/jake-tapper-dominion-lawsuit-settlement-fox-news-statement-lead-vpx.cnn",
|
||||
"https://www.target.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.cnn.com/2023/04/18/politics/schumer-senate-feinstein-vote-cardin/index.html",
|
||||
"https://www.cnn.com/2023/04/14/entertainment/yellowjackets-90s-music/index.html",
|
||||
"https://www.cdc.gov/"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86309",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=35004",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56218",
|
||||
"https://www.cdc.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64648",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66700",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10184",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22926",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50276",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58496",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45525",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68403",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15410",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81230",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83468",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1309",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80738",
|
||||
"https://www.chase.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=49250",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28893",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=88107",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21433"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.usps.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.usps.com/"
|
||||
"https://www.target.com/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.irs.gov/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/CA/Ontario.json
Normal file
55
data/regions/US/CA/Ontario.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - California (Ontario)",
|
||||
"google_module": {
|
||||
"base_lat": 34.0633,
|
||||
"base_lon": -117.6509,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=48739",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=39533",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12381",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20247",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23000",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79341",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77484",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91693",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93777",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40057",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80653",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12746",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1067",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78300",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96470",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3316",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81831",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54345",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25264",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51433",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=3984",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27497",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64040",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=55260",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=4588",
|
||||
"https://www.irs.gov/"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.irs.gov/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.target.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.chase.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.amazon.com/",
|
||||
"https://www.npr.org/2026/04/23/nx-s1-5795829/peace-talks-between-us-and-iran-at-a-standstill-as-trump-extends-ceasefire",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82184",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36644",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14428",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70978",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94783",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77845",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71101",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76155",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67582",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16624",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=71226",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21885",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78442",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cnn.com/2023/04/18/politics/mccarthy-biden-debt-ceiling/index.html",
|
||||
"https://www.chase.com/",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/h_8d51e3ae2714edaa0dace837305d03b8",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.cnn.com/2023/04/18/us/benadryl-tiktok-challenge-teen-death-wellness/index.html",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/index.html",
|
||||
"https://www.cnn.com/2023/04/14/entertainment/yellowjackets-90s-music/index.html",
|
||||
"https://www.target.com/",
|
||||
"https://www.npr.org/2026/04/23/g-s1-118440/up-first-newsletter-us-iran-john-phelan-trump-republican-democrat-midterm-fundraising-budget-reconciliation-ice",
|
||||
"https://www.cnn.com/videos/politics/2023/04/18/jake-tapper-dominion-lawsuit-settlement-fox-news-statement-lead-vpx.cnn",
|
||||
"https://www.cnn.com/europe/live-news/russia-ukraine-war-news-04-18-23/index.html",
|
||||
"https://www.cnn.com/2023/04/17/health/rise-type-2-diabetes-global-wellness/index.html",
|
||||
"https://www.cnn.com/2023/04/18/health/teen-misuse-adhd-meds-wellness/index.html",
|
||||
"https://www.cnn.com/2023/04/18/politics/schumer-senate-feinstein-vote-cardin/index.html",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11675",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79115",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79781",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90626",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16171",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.usps.com/",
|
||||
"https://www.cnn.com/travel/article/worlds-longest-cycling-tunnel/index.html",
|
||||
"https://www.cnn.com/cnn-underscored/reviews/mmmat-silicone-mats?iid=CNNUnderscoredHPcontainer",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.cnn.com/2023/04/18/opinions/2024-presidential-election-alternative-voters-lieberman"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91093",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=25807",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13524",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85117",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=18036",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=89342",
|
||||
"https://www.chase.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67550"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.usps.com/"
|
||||
"https://www.usps.com/",
|
||||
"https://www.cdc.gov/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/CO/Boulder.json
Normal file
55
data/regions/US/CO/Boulder.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Colorado (Boulder)",
|
||||
"google_module": {
|
||||
"base_lat": 40.015,
|
||||
"base_lon": -105.2705,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.walmart.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27511",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83326",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83162",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11039",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=89496",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82444",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54660",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16825",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=26734",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56779",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29088",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15847",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23830",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14763",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=64773",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99376",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40183",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6780",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46128",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=40218",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61583",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=32050",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36640",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66220",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11882"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.amazon.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.irs.gov/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/FL/Miami.json
Normal file
55
data/regions/US/FL/Miami.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Florida (Miami)",
|
||||
"google_module": {
|
||||
"base_lat": 25.7617,
|
||||
"base_lon": -80.1918,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82387",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56266",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12882",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=4845",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5312",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30111",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65728",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11604",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30130",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74637",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23575",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=11291",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19914",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28311",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66114",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90944",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=72144",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=15030",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28911",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14748",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10999",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96727",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33409",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10109",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5414"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.usa.gov/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/GA/Atlanta.json
Normal file
55
data/regions/US/GA/Atlanta.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Georgia (Atlanta)",
|
||||
"google_module": {
|
||||
"base_lat": 33.749,
|
||||
"base_lon": -84.388,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86581",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=69974",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38811",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84364",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=73759",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17921",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6458",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30734",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37812",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41293",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=1483",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91501",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=23157",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16804",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=52432",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50627",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96323",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=83640",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31532",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=66610",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=12751",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58598",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=14929",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=95073",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16750"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.target.com/",
|
||||
"https://www.amazon.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
52
data/regions/US/HI/Honolulu.json
Normal file
52
data/regions/US/HI/Honolulu.json
Normal file
@@ -0,0 +1,52 @@
|
||||
{
|
||||
"region_name": "USA (Hawaii - Honolulu)",
|
||||
"google_module": {
|
||||
"base_lat": 21.3069,
|
||||
"base_lon": -157.8583,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.hawaii.gov/",
|
||||
"https://health.hawaii.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43947",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=80635",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68939",
|
||||
"https://www.apple.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=7046",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30335",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34518",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97003",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87897",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43038",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21953",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19250",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=51433",
|
||||
"https://www.staradvertiser.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=19123",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=93187",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=10286",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=59161",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33662",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76607",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33734",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=41860",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87740",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27675",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8011",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=560",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=53447"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.staradvertiser.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random",
|
||||
"https://www.microsoft.com/",
|
||||
"https://health.hawaii.gov/",
|
||||
"https://www.hawaiinewsnow.com/",
|
||||
"https://www.hawaii.gov/",
|
||||
"https://www.apple.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/IA/Council_Bluffs.json
Normal file
55
data/regions/US/IA/Council_Bluffs.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Iowa (Council Bluffs)",
|
||||
"google_module": {
|
||||
"base_lat": 41.2619,
|
||||
"base_lon": -95.8608,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=81150",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46001",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=87484",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=8780",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16903",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=26477",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=58176",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2168",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65808",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=44247",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=50046",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17533",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=56434",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=78447",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38225",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37458",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76865",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=60977",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79595",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=45800",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63369",
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=36559",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=79226",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5947",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82790"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.chase.com/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.homedepot.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.walmart.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/IL/Chicago.json
Normal file
55
data/regions/US/IL/Chicago.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "🇺🇸 United States - Chicago",
|
||||
"google_module": {
|
||||
"base_lat": 41.8818,
|
||||
"base_lon": -87.6231,
|
||||
"lang_params": "hl=en&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91153",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28513",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67099",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90831",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33001",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=75985",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33229",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=24461",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98857",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=5960",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=96406",
|
||||
"https://www.chase.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6462",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13123",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21194",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=31554",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=38388",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70686",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=77287",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46612",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42869",
|
||||
"https://www.cdc.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=90854",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17179",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20436",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=42404",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=16020"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.walmart.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.usps.com/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.amazon.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -8,43 +8,48 @@
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.cnn.com/travel/article/worlds-longest-cycling-tunnel/index.html",
|
||||
"https://www.npr.org/2026/04/23/nx-s1-5795829/peace-talks-between-us-and-iran-at-a-standstill-as-trump-extends-ceasefire",
|
||||
"https://www.chase.com/",
|
||||
"https://www.usps.com/",
|
||||
"https://www.cnn.com/2023/04/17/health/rise-type-2-diabetes-global-wellness/index.html",
|
||||
"https://www.cnn.com/2023/04/18/us/benadryl-tiktok-challenge-teen-death-wellness/index.html",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.cnn.com/2023/04/18/politics/schumer-senate-feinstein-vote-cardin/index.html",
|
||||
"https://www.cnn.com/europe/live-news/russia-ukraine-war-news-04-18-23/index.html",
|
||||
"https://www.cnn.com/2023/04/18/health/teen-misuse-adhd-meds-wellness/index.html",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.cnn.com/cnn-underscored/reviews/mmmat-silicone-mats?iid=CNNUnderscoredHPcontainer",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.npr.org/2026/04/23/g-s1-118440/up-first-newsletter-us-iran-john-phelan-trump-republican-democrat-midterm-fundraising-budget-reconciliation-ice",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.cnn.com/2023/04/18/opinions/2024-presidential-election-alternative-voters-lieberman",
|
||||
"https://www.cnn.com/2023/04/14/entertainment/yellowjackets-90s-music/index.html",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/h_8d51e3ae2714edaa0dace837305d03b8",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68752",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=53060",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.cnn.com/2023/04/18/politics/mccarthy-biden-debt-ceiling/index.html",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=92418",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=86361",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17592",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67344",
|
||||
"https://www.cdc.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=95302",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17599",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=91445",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=24926",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=43921",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=74456",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=82313",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=39046",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cnn.com/business/live-news/fox-news-dominion-trial-04-18-23/index.html",
|
||||
"https://www.cnn.com/videos/politics/2023/04/18/jake-tapper-dominion-lawsuit-settlement-fox-news-statement-lead-vpx.cnn",
|
||||
"https://www.target.com/"
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=34233",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6830",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33586",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=2115",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=30973",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=28476",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=84084",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=29751",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=33084",
|
||||
"https://www.chase.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=493",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=26203"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.usa.gov/",
|
||||
"https://www.harvard.edu/",
|
||||
"https://www.target.com/",
|
||||
"https://www.usps.com/",
|
||||
"https://www.bankofamerica.com/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.usps.com/"
|
||||
"https://www.cdc.gov/",
|
||||
"https://www.amazon.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
55
data/regions/US/KS/Kansas_City.json
Normal file
55
data/regions/US/KS/Kansas_City.json
Normal file
@@ -0,0 +1,55 @@
|
||||
{
|
||||
"region_name": "United States - Kansas (Kansas City)",
|
||||
"google_module": {
|
||||
"base_lat": 39.1155,
|
||||
"base_lon": -94.6268,
|
||||
"lang_params": "hl=en-US&gl=US",
|
||||
"valid_url_suffix": "com"
|
||||
},
|
||||
"trust_module": {
|
||||
"white_urls": [
|
||||
"https://www.zillow.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=63446",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=20375",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=22208",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=99155",
|
||||
"https://www.walmart.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=61689",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=21338",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27796",
|
||||
"https://www.weather.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=97947",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=98052",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=4011",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=6663",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=37865",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54485",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=94175",
|
||||
"https://www.amazon.com/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=65227",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=27418",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=17379",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=76752",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=54473",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=85182",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=67393",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=68475",
|
||||
"https://www.irs.gov/",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=46036",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=13960",
|
||||
"https://en.wikipedia.org/wiki/Special:Random?r=70871"
|
||||
],
|
||||
"static_urls": [
|
||||
"https://www.usa.gov/",
|
||||
"https://www.zillow.com/",
|
||||
"https://www.weather.gov/",
|
||||
"https://www.amazon.com/",
|
||||
"https://www.indeed.com/",
|
||||
"https://www.target.com/",
|
||||
"https://www.irs.gov/",
|
||||
"https://www.walmart.com/",
|
||||
"https://www.chase.com/",
|
||||
"https://www.homedepot.com/"
|
||||
]
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user