用百度搜索 API 检索中文网页
通过 HTTP 检索百度,拿到中文网页结果,包括百度百科词条和官方媒体报道 —— 这些内容在全球索引里的排序完全不同,甚至根本没有收录。
接口POST https://api.search1api.com/search
结果的 JSON 结构与其他引擎一致,现有的解析逻辑不需要改动。
结果指向中文站点,包括 baike.baidu.com。
摘要就是百度展示的页面描述。
排序反映的是百度的结果,不是全球索引。
适用于
中国调研 / 政策追踪 / 本地化
中文用户实际看到的那个排序
把 `search_service` 设为 `baidu`,结果就来自百度。接口地址、鉴权方式和响应结构与其他引擎完全一致。
定义类查询出百度百科
定义类查询会带出百度百科词条,那是中文读者最先落到的参考层。
政策与官方媒体覆盖
监管和政策类查询会带出 gov.cn 和官方媒体,这类内容在全球索引里往往排得很靠后。
是排序,不是翻译
返回的是百度对中文查询给出的结果,这和把查询翻译成英文再搜全球索引是两个不同的答案。
标准 Search 参数
`max_results` 最大 50,以及 `include_sites`、`exclude_sites`、`time_range`。
什么是百度搜索 API?
百度搜索 API 是一种 HTTP 接口,把百度的网页结果作为结构化数据返回。百度是中国大陆占主导地位的搜索引擎,它的排序就是中文用户实际看到的结果,同一个话题在全球索引里的排序会有实质差异。Search1API 把百度作为 Search 接口的一个搜索服务提供,返回标题、链接和中文摘要,JSON 结构与其他引擎一致。做中国市场相关的调研 —— 监管、消费者情绪、本地竞品 —— 直接查百度和"把问题翻译成英文再搜 Google"是两件不同的事。
典型流程
通过 HTTP 检索百度,拿到中文网页结果,包括百度百科词条和官方媒体报道 —— 这些内容在全球索引里的排序完全不同,甚至根本没有收录。
把 `search_service` 设为 `baidu`,用中文发送查询。
按与其他引擎相同的结构读取标题、链接和摘要。
当流程需要页面正文而不只是链接时,设置 `crawl_results`。
一次请求,拿到中国市场的结果集
一次调用即可检索百度,以标准结构返回中文结果,中文互联网可以走和其他来源完全相同的代码路径。
bashcurl -X POST https://api.search1api.com/search \-H "Authorization: Bearer $SEARCH1API_KEY" \-H "Content-Type: application/json" \-d '{"query": "人工智能","search_service": "baidu","max_results": 5}'
适合场景
关于中国竞品、定价和消费者情绪的市场调研。
一手资料是中文的监管与政策追踪。
需要看到本地结果集的本地化工作。
回答中国大陆相关问题的 AI 助手。
常见问题
百度有官方的搜索 API 吗?
百度的开发者产品主要围绕云和 AI 平台,并不是面向第三方的、按请求计费的简单网页搜索端点。Search1API 把百度作为 Search 接口的一个引擎提供,按请求计费。
应该用中文还是英文查询?
用中文。索引是中文内容,只有中文查询才能得到本地用户会看到的排序。英文查询返回的结果会明显偏薄。
可以顺便拿到页面正文吗?
可以。把 `crawl_results` 设为需要抓取的结果数量,成功抓取的页面会包含 `content` 字段,内容是 markdown 格式的正文。抓取失败的结果不返回 `content`,也不计费。
百度搜索的费用是多少?
每次搜索消耗 1 积分,通过 `crawl_results` 每成功抓取一个页面追加 1 积分。按 $1 = 1,000 积分的充值基础价计算,1,000 次搜索为 $1。注册即送 100 个免费积分,无需信用卡。
这和用中文搜 Google 有什么区别?
区别很大。Google 对中文互联网的收录是部分的,排序也不是大陆用户看到的那一套。百度百科词条、官方媒体和本地垂类站点,在两边的排序差异非常明显。
还支持哪些中文引擎?
同一个 Search 接口还支持中文网页的 `360` 和 `quark`、公众号文章的 `wechat`、视频的 `bilibili`。加上全球引擎,一套契约共 17 个引擎。