无法从 mailchimp API 获得响应

Posted

技术标签:

【中文标题】无法从 mailchimp API 获得响应【英文标题】:Cannot get response from mailchimp API 【发布时间】:2020-05-08 22:34:09 【问题描述】:

我需要通过 python 脚本和 GET 数据连接 mailchimp API,我稍后会转移到 PowerBI for BI 解决方案。

我已阅读文档: https://mailchimp.com/developer/guides/get-started-with-mailchimp-api-3/#Parameters

我正在尝试获取特定报告 https://mailchimp.com/developer/reference/reports/#get_/reports/-campaign_id-

首先我设法使用以下代码连接到报告 (https://mailchimp.com/developer/reference/reports/#get_/reports/):

import requests
import json

r=requests.get("https://us11.api.mailchimp.com/3.0/reports/", 
               headers="content-type": "application/json", 
               auth=('anystring', 'myapikey')
               ,params='fields':['id'])

data=r.json()
print(data)
r_dict = json.loads(r.text)
print(r.status_code)
print(r.text)

for i in r_dict:
   print("key:", i,"val",r_dict[i])

然后我得到某种输出,这不是错误,而且似乎我已连接,因为我检索了数据。现在我正在尝试连接到特定的报告,我设置了一个 ID,但似乎我无法理解如何正确设置参数。我的代码如下所示:

r=requests.get("https://us11.api.mailchimp.com/3.0/reports/80419197aa", 
               headers="content-type": "application/json", 
               auth=('anystring', 'myapikey')
               ,params='fields':['id','campaign_title','type','list_id'])

data=r.json()
print(data)
r_dict = json.loads(r.text)
print(r.status_code)
print(r.text)

for i in r_dict:
    print("key:", i,"val",r_dict[i])

然后我得到这个错误:

'类型': 'http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/', 'title': '资源未找到', 'status': 404, 'detail': '请求的 找不到资源。','实例': '13af7a5e-9868-4dd3-abd6-6c3b0b58983f' 404 "type":"http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/","title":"资源 Not Found","status":404,"detail":"请求的资源不能被 找到。","instance":"13af7a5e-9868-4dd3-abd6-6c3b0b58983f" 键:类型 值 http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/ 键:title val Resource Not Found 键:status val 404 键:detail val 找不到请求的资源。键:实例值 13af7a5e-9868-4dd3-abd6-6c3b0b58983f"

谁能帮我我应该如何指定参数,因为我想那里有错误?

【问题讨论】:

【参考方案1】:

出现404错误的原因是auth参数,如果去掉这个参数会得到错误401,即API Key无效,需要使用正确的认证方式。

我建议你先用Postman之类的程序试试,这样你就可以丢弃代码之外的一些错误。

【讨论】:

以上是关于无法从 mailchimp API 获得响应的主要内容,如果未能解决你的问题,请参考以下文章

无法从 api 获得响应

无法从使用 C# 的 API 获得 json 响应

Mailchimp API 返回奇怪的响应

Symfony 4 JWT:访问 api 时我无法从控制器获得响应

无法从使用 Express.js 和 SQL Server 创建的 api 获得任何响应

AppleScript无法获得api响应的引用形式