如何与使用Python的呼叫量最少的搜索在Facebook的图形API的名字的网页?

问题描述 投票:-1回答:1

我的足球队名字my_team_list = ['Bayern Munich', 'Chelsea FC', 'Manchester United', ...]并试图寻找他们的官方Facebook页面来获得使用Python fan_count他们facebook-api列表。这是我到目前为止的代码:

club_list = []

for team in my_team_list:
    data = graph.request('/pages/search?q=' + team[0])

    for i in data['data']:
        likes = graph.get_object(id=i['id'], fields='id,name,fan_count,is_verified')
        if likes['is_verified'] is True:
            club_list.append([team[0],likes['name'],likes['fan_count'],likes['id']])

但是,因为我的列表包含了超过3000家具乐部,与此代码我会得到下面的速率限制的错误:

GraphAPIError: (#4) Application request limit reached

如何减少来电每次通话以获得一个以上的俱乐部的网页(例如批处理电话?)

facebook-graph-api rate-limiting
1个回答
0
投票

由于在OP状态的评论,配料也救不了你。你需要积极地看着速率限制:

“向图形API的调用所有响应包括X应用程序,使用HTTP标头。这头包含使用你的应用程序的当前百分比,这个百分比等于在速率限制图表显示你的使用。使用此数以动态地平衡你的呼叫负载,以避免被节流“。 https://developers.facebook.com/docs/graph-api/advanced/rate-limiting#application-level-rate-limiting

通过你的第一次运行,您应该保存所有有效页面的id所以在未来你可以查询这些ID,而不是做一个搜索。

© www.soinside.com 2019 - 2024. All rights reserved.