# 首发媒体识别与评估技能 (First Publisher Analyzer)

**版本：** v1.0.0
**创建日期：** 2026-04-02
**用途：** 识别新闻事件的首发媒体，评估媒体政治倾向和可信度

---

## 功能概述

本技能根据事件中所有关联新闻的发布时间，识别**首发媒体**（最早发布者），并对该媒体进行全面评估：

✅ **首发媒体识别** - 基于时间排序，智能识别第一手信息源
✅ **媒体基本信息** - 历史背景、机构归属、影响范围
✅ **政治倾向评估** - 左-中-右光谱定位，评估依据说明
✅ **可信度评分** - 历史准确性、编辑标准、更正政策综合评分
✅ **传播路径分析** - 构建传播时间线，识别关键节点

---

## 快速开始

### 1. 命令行使用

```bash
cd /root/.openclaw/workspace/skills/first-publisher-analyzer

# 使用示例数据
python3 scripts/analyze_first_publisher.py

# 使用自定义数据文件
python3 scripts/analyze_first_publisher.py references/example-input.json
```

### 2. 输入数据格式

```json
[
  {
    "media_name": "路透社",
    "media_url": "https://www.reuters.com",
    "article_url": "https://www.reuters.com/world/article",
    "title": "新闻标题",
    "publish_time": "2024-03-15T10:30:00Z"
  }
]
```

**必需字段：**
- `media_name`: 媒体名称
- `article_url`: 文章链接
- `publish_time`: 发布时间

**可选字段：**
- `media_url`: 媒体主页URL（推荐，提升识别准确性）
- `title`: 文章标题
- `content`: 文章内容摘要

---

## 输出结果

### 结论性描述（Markdown）

```
## 首发媒体分析结论

**首发媒体：** 路透社
**发布时间：** 2024-03-15T10:30:00Z
**原始链接：** https://www.reuters.com/world/article

**媒体概况：**
- 成立时间：1851年
- 总部：伦敦，英国
- 机构归属：汤森路透
- 影响范围：global

**政治倾向：**
- 倾向性：中间偏中立
- 评估依据：基于国际媒体数据库对路透社的历史记录

**可信度评估：**
- 评分：88/100
- 等级：high
```

### 媒体画像卡片（JSON）

```json
{
  "media_name": "路透社 (Reuters)",
  "basic_information": {
    "established_year": 1851,
    "headquarters": "伦敦，英国",
    "owner": "汤森路透"
  },
  "political_leaning": {
    "leaning": "中间偏中立",
    "score": 50,
    "confidence": "high"
  },
  "credibility": {
    "score": 88,
    "level": "high"
  }
}
```

---

## 核心脚本

| 脚本 | 功能 |
|------|------|
| `analyze_first_publisher.py` | 主入口：综合分析（识别+评估） |
| `identify_first_publisher.py` | 识别首发媒体，构建传播时间线 |
| `assess_media.py` | 评估媒体基本信息、政治倾向、可信度 |

---

## 支持的媒体数据库

内置国际主流媒体数据库：

| 媒体 | 可信度 | 政治倾向 |
|------|--------|----------|
| 美联社 (AP) | 90 | 中立 |
| 路透社 (Reuters) | 88 | 中立 |
| BBC | 85 | 中间偏左 |
| 纽约时报 | 82 | 自由主义/进步主义 |
| 华尔街日报 | 83 | 商业保守主义/中右翼 |
| 卫报 | 84 | 中间偏左 |
| CNN | 72 | 中间偏左 |
| 福克斯新闻 | 60 | 保守主义 |

---

## 使用场景

- **舆情分析** - 识别事件第一手来源，评估信息可信度
- **信息溯源** - 追踪新闻事件的传播链路和关键节点
- **媒体可信度评估** - 系统化评估媒体的可靠性和政治立场
- **认知战研究** - 识别敌对叙事的首发渠道和传播模式
- **危机应对** - 快速评估突发信息源的可靠性

---

## 技术特性

✅ 多种时间格式支持（ISO 8601、中文格式、Unix时间戳）
✅ 智能域名解析和媒体识别
✅ 内置国际主流媒体数据库
✅ 传播时间线自动构建
✅ 异常数据标注和处理
✅ 可扩展媒体数据库
✅ 结构化输出 + 可读性结论

---

## 扩展和定制

### 添加新媒体

编辑 `scripts/assess_media.py`，在 `INTERNATIONAL_MEDIA_DB` 中添加：

```python
"your-media.com": {
    "name": "媒体名称",
    "established": 2020,
    "headquarters": "城市，国家",
    "owner": "机构名称",
    "political_leaning": "政治倾向描述",
    "credibility": 75,
    "audience_scale": "national",
    "media_type": "online",
    "description": "媒体描述..."
}
```

### 支持新时间格式

编辑 `scripts/identify_first_publisher.py`，在 `parse_timestamp()` 中添加：

```python
formats = [
    # ... 现有格式 ...
    "%Y/%m/%d %H:%M:%S",  # 添加新格式
]
```

---

## 文件结构

```
first-publisher-analyzer/
├── SKILL.md                              # 技能说明
├── README.md                             # 本文件
├── scripts/
│   ├── analyze_first_publisher.py         # 主入口
│   ├── identify_first_publisher.py       # 首发媒体识别
│   └── assess_media.py                   # 媒体评估
└── references/
    ├── example-input.json                # 示例输入数据
    └── USAGE_EXAMPLES.md                 # 使用示例
```

---

## 注意事项

1. **时间准确性**：分析结果高度依赖时间戳的准确性
2. **媒体URL重要性**：提供 `media_url` 字段可以大幅提升媒体识别准确性
3. **数据库覆盖**：当前数据库主要覆盖国际主流媒体，地方性媒体需手动添加
4. **政治倾向复杂性**：政治倾向是简化评估，实际立场可能更复杂

---

## 测试验证

✅ 所有脚本已通过测试
✅ 示例数据已验证
✅ 输出格式符合规范
✅ 时间解析功能正常
✅ 媒体识别功能正常

---

**技能路径：** `/root/.openclaw/workspace/skills/first-publisher-analyzer/`
