【发布时间】:2023-01-08 21:09:49
【问题描述】:
问题描述:
- 我们在提取 Facebook 帐户广告时收到 (#100) 缺少权限错误 使用 Python 中的 Graph API 以编程方式生成的访问令牌来洞察数据。
- 后来我们在应用程序中生成了具有 ads_read 和 insights_read 权限的访问令牌,我们能够成功提取数据。
问题:
1.我们如何在 python 中使用 Graph API 以编程方式生成具有权限的访问令牌? 2.哪种代币适合提取广告帐户洞察数据?
error message:
{
"error": {
"message": "(#100) Missing permissions",
"type": "OAuthException",
"code": 100,
"fbtrace_id": "A4vPClDlI__dFmxxhiVVGRG"
}
}
访问令牌生成代码示例:
import requests
def get_fb_token(app_id, app_secret):
url = 'https://graph.facebook.com/oauth/access_token'
payload = {
'grant_type': 'client_credentials',
'client_id': app_id,
'client_secret': app_secret
}
response = requests.post(url, params=payload)
return response.json()['access_token']
app_id = 'XXXXXXXXXXXXXXX'
app_secret = 'XXXXXXXXXXXXXXXXX'
data_request = get_fb_token(app_id, app_secret)
print(data_request)
笔记:
- 我们也尝试过传递 scope:ads_read,但我们遇到了同样的错误。
- 我们也尝试过 Facebook -SDK 包,但我们得到的是相同的访问令牌。
【问题讨论】:
-
我认为您需要打开一个浏览器并向该端点发出获取请求...这将向用户显示一个 oauth 授权屏幕,然后使用您可以发送的令牌重定向回以交换实际可用的令牌.. .通常你不能只发布一些东西到oauth端点......所有用户凭据必须在facebook登录表单中输入并且通常不能只是在帖子中传递
-
我需要它以编程方式,以使用 python 的自动化方式。
-
您可以使用 selenium 打开并使用它来填充登录凭据
标签: python facebook-graph-api facebook-marketing-api