2014-11-11 6 views
1

В настоящее время я использую https://github.com/pythonforfacebook/facebook-sdkПолучить почту страницы Facebook с помощью Facebook API (питон)

Я просто взял питон не слишком давно.

Что мне нужно сделать: Извлечь сообщения определенной страницы Facebook.

Пример:

В Facebook График API проводника, используя Walmart в качестве примера

/v2.2/ walmart?fields=posts{message}

В результате то, что нужно.

То, что я

Следуя примеру из the get_post.py example

targetProfile = 'walmart' 
graph = facebook.GraphAPI(key) 
profile = graph.get_object(targetProfile) 
posts = graph.get_connections(profile['id'], 'posts') 

print posts['data'] 

После выполнения кода с действительным ключом доступа и т.д., кажется, распечатать комментарии/пост потребителя но я нужны только сообщения от walmart. Может ли кто-нибудь просветить меня относительно того, что я должен делать, или что я сделал неправильно?

Заранее благодарен!

ответ

1

После выполнения некоторых проб и ошибок я нашел решение своего ответа. Это может быть не лучшее решение, но оно отвечает моим требованиям.

profile = graph.get_object(targetProfile+"/statuses") 

Jstr = json.dumps(profile) 
JDict = json.loads(Jstr) 

    for i in JDict['data']: 
     print "message: "+i['message'] 
0

profile = graph.get_object(targetProfile+"/statuses") print profile['data'][0]['message']

это вернет тэ первого сообщение вашего профиля, без использования JStr и JDict вара

0

В приведенном ниже фрагменте код должен решить вопрос о получении всех сообщений для сообщений, использует facepy и обрабатывает пейджинг самостоятельно.

from facepy import GraphAPI 
import json 

access = '<access_token>' 

graph = GraphAPI(access) 
page_id= '<page_name or page_id>' 
datas= graph.get(page_id+'/posts?fields=message', page=True, retry=5) 

posts=[] 

for data in datas: 
    posts.append(data) 
    print posts