# 2026 FIFA World Cup - 小组赛对阵表

数据来源：https://en.wikipedia.org/wiki/2026_FIFA_World_Cup
提取时间：2026-06-09
提取方法：Python urllib + regex，按 Group 标题分割 HTML 后提取球队链接

## 小组赛分组（12组 × 4队 = 48队）

| 小组 | 球队1 | 球队2 | 球队3 | 球队4 |
|------|-------|-------|-------|-------|
| A | 墨西哥 🇲🇽 (东道主) | 南非 🇿🇦 | 韩国 🇰🇷 | 捷克 🇨🇿 |
| B | 加拿大 🇨🇦 (东道主) | 波黑 🇧🇦 | 卡塔尔 🇶🇦 | 瑞士 🇨🇭 |
| C | 巴西 🇧🇷 | 摩洛哥 🇲🇦 | 海地 🇭🇹 | 苏格兰 🏴󠁧󠁢󠁳󠁣󠁴󠁿 |
| D | 美国 🇺🇸 (东道主) | 巴拉圭 🇵🇾 | 澳大利亚 🇦🇺 | 土耳其 🇹🇷 |
| E | 德国 🇩🇪 | 库拉索 🇨🇼 | 科特迪瓦 🇨🇮 | 厄瓜多尔 🇪🇨 |
| F | 荷兰 🇳🇱 | 日本 🇯🇵 | 瑞典 🇸🇪 | 突尼斯 🇹🇳 |
| G | 比利时 🇧🇪 | 埃及 🇪🇬 | 伊朗 🇮🇷 | 新西兰 🇳🇿 |
| H | 西班牙 🇪🇸 | 佛得角 🇨🇻 | 沙特阿拉伯 🇸🇦 | 乌拉圭 🇺🇾 |
| I | 法国 🇫🇷 | 塞内加尔 🇸🇳 | 伊拉克 🇮🇶 | 挪威 🇳🇴 |
| J | 阿根廷 🇦🇷 | 阿尔及利亚 🇩🇿 | 奥地利 🇦🇹 | 约旦 🇯🇴 |
| K | 葡萄牙 🇵🇹 | 刚果(金) 🇨🇩 | 乌兹别克斯坦 🇺🇿 | 哥伦比亚 🇨🇴 |
| L | 英格兰 🏴󠁧󠁢󠁥󠁮󠁧󠁿 | 克罗地亚 🇭🇷 | 加纳 🇬🇭 | 巴拿马 🇵🇦 |

## 东道主
- **A组 墨西哥** — 6月11日揭幕战 vs 南非，墨西哥城
- **B组 加拿大** — 6月12日首战，多伦多
- **D组 美国** — 6月12日首战，洛杉矶

## 赛程时间线
- 小组赛：6月11日 - 6月27日
- 淘汰赛：6月28日 - 7月3日
- 决赛：7月19日

## 时差换算（北京时间 UTC+8）
| 比赛地点 | 时区 | → 北京时间 |
|---------|------|-----------|
| 墨西哥城 | UTC-5 | +13小时 |
| 多伦多 | UTC-4 | +12小时 |
| 洛杉矶 | UTC-7 | +15小时 |

## 提取代码参考

```python
import urllib.request
import re

url = "https://en.wikipedia.org/wiki/2026_FIFA_World_Cup"
req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"})
with urllib.request.urlopen(req, timeout=15) as resp:
    html = resp.read().decode("utf-8", errors="replace")

# 按 Group 标题分割
group_headers = [(m.start(), m.group(1)) for m in re.finditer(r'<h3[^>]*>Group ([A-L])</h3>', html)]

groups = {}
for i, (pos, gname) in enumerate(group_headers):
    end = group_headers[i+1][0] if i+1 < len(group_headers) else len(html)
    section = html[pos:end]
    teams = re.findall(r'<a[^>]*national[^"]*"[^>]*>([^<]+)</a>', section)
    groups[gname] = list(dict.fromkeys(teams))  # 去重保序

for g in "ABCDEFGHIJKL":
    if g in groups:
        print(f"Group {g}: {' | '.join(groups[g])}")
```
