【问题标题】:Google Custom Search API for image searches - Unexpected results followed by 403用于图像搜索的 Google 自定义搜索 API - 意外结果后跟 403
【发布时间】:2015-01-08 16:31:21
【问题描述】:

我已关注 this guidethis reference 创建自定义搜索引擎。

我创建它只是为了从 Google 获取图像 URL 以在我的应用程序中使用。

但是,当我使用非常常见的查询(例如,q=heinz+baked+beans)对其进行测试时,结果与您在 Google 图片(或 Google)中执行相同搜索时获得的结果完全不同。

这是我正在使用的 API URL:

SEARCH_URL_BASE = "https://www.googleapis.com/customsearch/v1" +
                "?key=PRIVATE" +
                "&cx=PRIVATE" + 
                "&cr=countryUK" +
                //"&exactTerms=heinz+baked+beans" +
                "&gl=uk" +
                "&googlehost=google.co.uk" +
                "&imgSize=medium" +
                "&imgType=photo" +
                "&safe=high" +
                "&searchType=image&fileType=jpg" +
                "&q=heinz+baked+beans"; //append the query

当您在浏览器中手动尝试此搜索时,顶部结果(在 images.google.co.uk 和 google.co.uk 中)来自 heinz.co.uk,但是当我通过 API 进行查询时,结果无处可见。

我尝试将heinz.co.uk 添加到我的自定义搜索设置屏幕中的Sites to search 字段中,这会产生来自API 的403 个响应,因此我将其恢复为没有Sites to search(选择Search the entire web...),但我仍然收到 403 错误。

有什么想法吗?

【问题讨论】:

    标签: search google-search-api google-image-search


    【解决方案1】:

    我创建了一个新的 google 帐户(使用全新的电子邮件地址 - 因此没有搜索历史记录以尝试克服 Google's personalization 'feature'),并使用它创建了一个新的密钥和自定义搜索引擎。这可能会导致结果的定制化程度降低 - 但我仍在对此进行试验。

    但是,对于这个新设置,我仍然收到 403 响应,我能想到的唯一原因是我太快地触发了我的请求。我的应用程序在每个请求之间休眠了 1000 毫秒,但这似乎还不够(即使我远远低于每天允许的 1,000 个请求)。我将尝试逐渐增加此睡眠间隔,并使用请求之间所需的最佳睡眠间隔更新此答案。

    【讨论】:

    • 我已将时间间隔增加到 90 秒(如果我运行我的应用程序一整天,我的请求数量将低于我的每日免费配额),这似乎很好。跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-18
    相关资源
    最近更新 更多