免费地震信息:数据来源 usgs / ceic 有什么区别?该怎么用
# 免费地震信息:数据来源 usgs / ceic 有什么区别?该怎么用
- **接口/接入点**:免费地震信息 · 2274-1
- **是否免费**:是(注册即免费额度)
- **请求方式**:POST / GET
- **返回格式**:JSON
- **适用人群**:开发者、数据分析师、科普作者
- **阅读时间**:约 7 分钟
## 核心要点
- 每条地震的 `from` 字段表示数据来源;实测出现 `usgs`(美国地质调查局)与 `ceic`(中国地震台网)两类。
- `usgs` 覆盖全球(尤其环太平洋、美国本土密集),`ceic` 主要为中国境内及周边的权威测定。
- 同一地震不同机构给出的震级可能略有差异,属正常;可按 `from` 字段做来源区分、去重或优先展示。
## Why:知道数据从哪来,才敢放心用
做科普或研究时,数据可信度是底线。`from` 字段让你知道每条记录出自哪个权威机构,既能在展示时标注来源提升可信度,也能在做统计时按来源分层,避免重复计数(同一地震可能被多源收录)。
## What:接口速览
| 项 | 值 |
|----|----|
| 接口地址 | `https://route.showapi.com/2274-1?appKey={your_appKey}` |
| 相关字段 | `from`(数据来源) |
| 实测取值 | `usgs`、`ceic`(文档示例仅 `usgs`) |
| 计费 | 免费(档位限制见 [免费 API 说明](https://www.showapi.com/free-api)) |
## How:按来源筛选与展示
```python
import requests
APP_KEY = "YOUR_APPKEY"
r = requests.post("https://route.showapi.com/2274-1",
params={"appKey": APP_KEY}, data={"date": "20250120"}, timeout=10)
body = r.json()["showapi_res_body"]
by_source = {}
for eq in body.get("earthquakes", []):
by_source.setdefault(eq["from"], []).append(eq)
print("usgs 条数:", len(by_source.get("usgs", [])))
print("ceic 条数:", len(by_source.get("ceic", [])))
```
返回字段示例:
```json
{ "showapi_res_body": { "earthquakes": [
{ "location": "加利福尼亚间歇泉西北7 公里处", "mag": 1.02, "from": "usgs" },
{ "location": "四川内江市市中区", "mag": 4.4, "from": "ceic" }
] } }
```
## 返回示例与解析
`from` 是两个字母机构代号:
| 值 | 含义 | 覆盖范围(实测观察) |
|----|------|---------------------|
| `usgs` | 美国地质调查局(United States Geological Survey) | 全球,尤其环太、美国本土密集 |
| `ceic` | 中国地震台网(China Earthquake Networks Center) | 中国境内及周边 |
> 注意:我们仅实测到这两种取值,未穷举全部可能。代码里建议用可扩展字典映射,遇到未知 `from` 值做兜底显示。
## 进阶 / 边界
- **去重**:同一地震可能被 usgs 和 ceic 同时收录(尤其中国周边),若做「全球统计」需按 `timeUTC`+`location` 近似去重,否则会重复计数。
- **震级差异**:不同机构测定震级可能差 0.1~0.3,属正常,不要当成数据错误。
- **不要硬编码只认 usgs**:文档示例只有 usgs,但实际有 ceic,代码应同时兼容。
## FAQ
**Q1:from 还可能有哪些值?**
文档示例仅 `usgs`,我们实测到 `usgs` 与 `ceic`。未穷举全部枚举,新增来源以接口实际返回为准;建议代码用字典映射并保留兜底。
**Q2:同一天 usgs 和 ceic 都有,该信哪个?**
两者都是权威机构,中国境内地震以 ceic(中国地震台网)测定更贴近国内口径;做国际统计可两者并用并按需去重。
**Q3:能不能只取中国地震?**
接口没有完全可靠的地区筛选(area 实测未生效)。可用 `from == "ceic"` 近似取中国台网记录,或按 `location` 含省名关键字过滤。
**Q4:ceic 的震级和新闻里说的一致吗?**
基本一致(都来自中国地震台网体系),但接口返回可能有更新延迟或最终修订差异,正式引用请以官方最新发布为准。
## 相关能力 / 下一步阅读
- [免费地震信息:返回字段全解(ret_code / mag / from 一文读懂)](https://www.showapi.com/guides/earthquake-info-response-fields-2274)
- [免费地震信息:震级(mag)与烈度到底有什么区别?字段口径详解](https://www.showapi.com/guides/earthquake-info-mag-vs-intensity-2274)
- [免费地震信息:科研取数——按日期批量导出震情做统计](https://www.showapi.com/guides/earthquake-info-research-dataset-2274)
- **本系列共 14 篇**:查看[免费地震信息指南总目录](https://www.showapi.com/guides/earthquake-info-guides-2274)