当尝试从FB的营销API获取数据时,我得到以下错误:
Status: 500 Response: { "error": { "code": 1, "message": "An unknown error occurred" } }
。如果我尝试立即通过Postman发出相同的请求,它有时会返回数据,有时会抛出500状态错误。下面是发送给FB
的数据 facebookads.exceptions.FacebookRequestError:
Message: Call was not successful
Method: GET
Path: https://graph.facebook.com/v2.3/act_XYZ/insights
Params: {
'time_increment': 1,
'level': 'adgroup',
'fields': '["account_name", "deeplink_clicks",
"campaign_name",
"social_impressions",
"campaign_group_name",
"campaign_id",
"adgroup_name",
"unique_impressions",
"social_reach",
"unique_social_impressions",
"placement",
"total_actions",
"cpm",
"impressions",
"ctr",
"reach",
"clicks",
"social_clicks",
"spend",
"website_clicks",
"adgroup_id",
"actions",
"cpc",
"cpp",
"unique_clicks",
"app_store_clicks",
"unique_social_clicks",
"account_id",
"campaign_group_id"
]',
'breakdowns': '["placement"]',
'time_range': '{"since":"2015-09-01","until":"2015-09-09"}',
'summary': None
}
Status: 500
Response:
{
"error": {
"code": 1,
"message": "An unknown error occurred"
}
}
我正在使用Facebook的Python SDK从
- e git + https://github.com/pythonforfacebook/facebook-sdk.git@449f56f0db086a41bedd23df714e7f77c1051f5b蛋= facebook_sdk-dev
有人能告诉我在这种情况下我可能会错过什么吗?
谢谢。
我遇到了同样的问题,我注意到一种模式,当请求在Postman中需要超过~30s时,它会出错。不知道你能做些什么来解决这个问题,但我已经取得了一些成功:
- 拉回粒度/分解级别
- 限制每页记录数
不幸的是,我没有看到导致这种延迟的粒度级别的一致模式。有时我可以报告每个页面5000个结果的@广告级别,其他时候我需要大幅缩减
您可能想了解HTTP协议-在本例中是关于响应状态码。500表示"内部服务器错误",也就是说facebook API服务器出了问题,而不是你的代码。此时,您唯一的选择是要么记录错误并停止,要么设置等待/重试循环。
我也看到了这个问题,并注意到它似乎是特别寻找竞选_name和竞选_id。基于排除或包含这些字段,我有一致的成功/失败。
我正在使用Ruby并访问v2.5 insights api。
更新所以我只是测试了在请求campaign_name字段时设置与不设置campaign级别的游戏,当我设置campaign级别时,调用现在成功了。也许你可以尝试设置不同的关卡进行测试?
我也遇到过同样的问题。在广告账户层面运行的洞察绝对是"我们的"最有效的。结束。我已经把有条件的异常处理的见解调用到adaccount,如果返回一个异常从facebook api调用已启动后,然后我尝试抓住所有的活动和运行洞察每个活动。
这也有助于防止执行限制,如果可以的话,每个帐户只调用一个洞察力api调用,并且只有在adaccount调用失败时才进入洞察力调用的活动粒度。