2017-10-31 10 views
1

私はニュースサイトのコメントプラグインからFacebookのコメントを取得しようとしています。これは、現時点で私が持っているコードです:PythonでFacebookのコメントプラグインからテキストを取得するには?

import facebook 
token = #valid token 
graph = facebook.GraphAPI(access_token=token, version='2.10') 
url = "http://www.jutarnji.hr/6703059" 
url_id = graph.get_object(url)['og_object']['id'] 
comments = graph.get_connections(url_id, 'comments') 

そして、これは(不必要な)出力されます:

{'data': []}

+0

を試すことができます'og_object'の' comments'サブフィールドを介して、https://developers.facebook.com/docs/plugins/faqs#faq_1603507626630008、https://developers.facebook.com/docs/graph-api/reference/ v2.10/urlにはこの言及がありませんそれ以上はありません。彼らがこれを削除したかどうかは分かりません。 – CBroe

答えて

1

あなたが働いていたこのコード

import facebook #sudo pip install facebook-sdk 
import itertools 
import json 
import re 
import requests 

access_token = "XXX" 
user = 'leehsienloong' 

graph = facebook.GraphAPI(access_token) 
profile = graph.get_object(user) 
posts = graph.get_connections(profile['id'], 'posts') 

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

count = 0 
for i in JDict['data']: 
    allID = i['id'] 
    try: 
     allComments = i['comments'] 

     for a in allComments['data']: 
      count += 1 
      print a['message'] 


    except (UnicodeEncodeError): 
     pass 


print count 
+0

ありがとうございますが、コードではKeyError: 'comments'が生成されています。特定の外部URLに適用する方法がはっきりと分かりません。 –

関連する問題