You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

googleapiclient调用Custom Search API无法获取超10条结果的原因

Google Custom Search API 结果数量限制问题

问题说明

使用Google Custom Search API时,当设置请求结果数量大于10会触发400错误,设置为10或以下则能正常返回搜索结果。

相关代码

import json
from googleapiclient.discovery import build
from pprint import pprint as pp

NUM_RESULTS = 11
MY_SEARCH = 'bordben'
MY_API_KEY = '...'
MY_CSE_ID = '...'


def google_search(search_term, api_key, cse_id, **kwargs):
    service = build("customsearch", "v1", developerKey=api_key)
    res = service.cse().list(q=search_term, cx=cse_id, **kwargs).execute()
    return res['items']

results = google_search(MY_SEARCH, MY_API_KEY, MY_CSE_ID, num=NUM_RESULTS)

for result in results:
    pp(result)

触发的错误信息

googleapiclient.errors.HttpError: <HttpError 400 when requesting https://customsearch.googleapis.com/customsearch/v1?q=bordben&cx=...( api key and csi id)&alt=json returned "Request contains an invalid argument.". Details: "[{'message': 'Request contains an invalid argument.', 'domain': 'global', 'reason': 'badRequest'}]"

限制原因

这是Google Custom Search API的原生限制:单次API请求最多只能返回10条搜索结果。这个限制是API设计时就确定的,主要用于控制单请求的资源负载,保证服务的稳定性和响应效率。

如果需要获取超过10条结果,必须通过分页方式多次请求:每次请求设置num=10,然后通过start参数指定下一页的起始位置(比如第一次请求start=1,第二次start=11,第三次start=21,以此类推)。需要注意的是,分页请求会消耗更多的API配额,要在自己的配额范围内操作。

内容的提问来源于stack exchange,提问作者hln

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:30:51