我正在尝试创建一个可以在 Facebook 上获得用户“每月喜欢”的应用程序。我从未使用过 Facebook API,而且我似乎找不到关于如何做我想做的事情的好教程。
例如,此页面具有允许我访问用户墙的 JSON 数据的 URL。这很酷,但我如何以编程方式和在应用程序中获取这些信息?我在 heroku 上设置了基本应用程序,我将使用它。
我正在尝试创建一个可以在 Facebook 上获得用户“每月喜欢”的应用程序。我从未使用过 Facebook API,而且我似乎找不到关于如何做我想做的事情的好教程。
例如,此页面具有允许我访问用户墙的 JSON 数据的 URL。这很酷,但我如何以编程方式和在应用程序中获取这些信息?我在 heroku 上设置了基本应用程序,我将使用它。
调用/me/posts
,浏览分页数据并设置条件以存储基于created_time
.
尽管如果有人翻阅旧帖子并开始喜欢它们,所有这些都可能会出现偏差。所以这一切都取决于你想如何定义每月的喜欢
http://developers.facebook.com/docs/reference/api/user/#posts
您可以从使用像 facepy 这样的简单库开始
from facepy import GraphAPI
graph = GraphAPI('your_access_token_goes_here')
pages = graph.get("me/posts", page=True)
for page in pages:
// do something with page["data"] like drop the likes in a month array
我希望为时不晚,但您可以实现以下功能:
from facepy import GraphAPI
graph = GraphAPI('your_access_token_goes_here')
pages = graph.get("me/posts", page=True)
getLikes(pages['posts']['data'])
def getLikes(this):
"""
Params- Takes in a page full of posts in the format- Eg. pages['posts']['data']
Returns- Total number of likes for each post and created_time of each post
"""
tli = []
ti = []
for i in this:
r = graph.get("/"+i['id']+"/likes?limit=200")
li = []
ti.append(i['created_time'])
for j in r['data']: #goes into each posts to get list of likes
li.append(j['name'])
tli.append(len(li))
return tli,ti ## this returns the total no of likes and corresponding created_time