使用Python+Facebook Graph API计算Facebook帖子的点赞数



我想数一下朋友用Python点赞用户帖子的次数。

我已经成功地提取了喜欢这些帖子的朋友的名字。但也有一些帖子根本没有任何相似之处。代码在那里给出了一个错误。我使用的是facebook sdk 1.0.0。任何帮助都将不胜感激。代码片段为:

import facebook
graph=facebook.GraphAPI(access_token="")
posts=graph.get_connections(id="me",connection_name="posts")
for w in range (0,5):
p1=posts['data'][w]['likes']['data']
for i in range (0,len(p1)):
r=p1[i]['name']
print(r) 

此外,有没有办法找出在所有帖子上点赞最多的朋友名单?

我有点不确定你在这里到底缺少了什么,或者你的问题是什么,但看起来你所需要做的就是定义你想要查找的名称,并计算它在代码中出现的次数。

类似这样的东西:

import facebook
likes = 0 # How many times they likes on your posts 
friend = "Bob" # Your friends name   
graph=facebook.GraphAPI(access_token="")
posts=graph.get_connections(id="me",connection_name="posts")
for w in range (0,5):
p1=posts['data'][w]['likes']['data']
for i in range (0,len(p1)):
if friend == p1[i]['name']
likes += 1
print likes

此外,如果您放弃for循环的范围,转而在数据结构本身上迭代,您可以极大地清理代码。像这样的东西会起作用:

import facebook
likes = 0 # How many times they likes on your posts 
friend = "Bob" # Your friends name   
graph=facebook.GraphAPI(access_token="")
posts=graph.get_connections(id="me",connection_name="posts")
for user_post in posts['data']:
for name in user_post['likes']['data']:
if friend == name['name']
likes += 1

最新更新