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

使用Google Safebrowsing API检测多URL返回空响应求助

解决Google Safebrowsing API返回空响应的问题

我来帮你排查这个问题,从你给出的代码和描述来看,主要有几个关键点需要修正,咱们一步步来:

1. 先修复代码里的语法错误

你提供的payload存在明显的语法不完整问题:

  • "MALWARE..."缺少闭合的双引号
  • threatTypes数组没有闭合
  • 整个payload的大括号也没写完
    这种语法错误会导致JSON序列化失败,或者发送给API的请求内容不合法,大概率会引发错误,甚至出现异常的空响应。

2. 补充API要求的必填参数

Google Safebrowsing v4 API的threatInfo字段里有几个必填项,你当前的payload里缺失了,这也是导致异常响应的原因:

  • platformTypes:指定要检测的平台类型,比如["ANY_PLATFORM"]
  • threatEntryTypes:指定要检测的条目类型,这里是URL,所以填["URL"]
  • threatEntries:你要检测的URL列表,必须明确传进去

3. 正确传递API密钥

Safebrowsing v4要求把API密钥作为查询参数附加到请求URL中,而不是放在请求体或头里。

修正后的完整代码

import requests
import json

api_key = '123456'
# 将API密钥作为查询参数加入请求URL
url = f"https://safebrowsing.googleapis.com/v4/threatMatches:find?key={api_key}"

# 完整且符合API要求的payload
payload = {
    'client': {
        'clientId': "mycompany",
        'clientVersion': "0.1"
    },
    'threatInfo': {
        'threatTypes': ["SOCIAL_ENGINEERING", "MALWARE"],
        'platformTypes': ["ANY_PLATFORM"],  # 必填字段
        'threatEntryTypes': ["URL"],  # 必填字段
        'threatEntries': [  # 替换成你要检测的实际URL列表
            {'url': "https://example.com"},
            {'url': "https://test-malicious-url.com"}
        ]
    }
}

# 设置正确的请求头,确保API能解析JSON格式的请求体
headers = {'Content-Type': 'application/json'}

try:
    # 发送POST请求,将payload序列化为JSON字符串
    response = requests.post(url, data=json.dumps(payload), headers=headers)
    # 检查请求是否成功(比如HTTP状态码为200)
    response.raise_for_status()
    
    result = response.json()
    if not result:
        print("✅ 未检测到威胁,API返回空结果(这是正常情况)")
    else:
        print("⚠️ 检测到威胁信息:", result)
except requests.exceptions.RequestException as e:
    print("❌ 请求出错:", str(e))

额外说明

  • 如果API返回空的JSON对象{},这是正常现象,说明你检测的URL没有被Google标记为恶意/钓鱼链接
  • 如果遇到403错误,先检查你的API密钥是否有效,以及是否在Google Cloud控制台中启用了Safebrowsing API
  • 由于你使用的是Python 3.5.2,f-string是支持的;如果有兼容性问题,可以改用字符串拼接:url = "https://safebrowsing.googleapis.com/v4/threatMatches:find?key=" + api_key

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:26:55