從下面的FQL查詢中,我可以獲取新聞傳播中包含「www.youtube.com」的帖子的actor_id和附件數據。但是,我希望能夠獲取該用戶的圖片和名稱。我將如何將它納入下面的查詢?如何執行multiquery fql語句?
SELECT created_time, post_id, actor_id, type, updated_time, attachment
FROM stream
WHERE post_id IN
(SELECT post_id
FROM stream
WHERE ('video') IN attachment
AND source_id IN
(SELECT uid2
FROM friend
WHERE uid1=me())
LIMIT 100)
編輯:
#right fql query, but prints only part of it
posts_query = "SELECT created_time, post_id, actor_id, type, updated_time, attachment FROM stream WHERE post_id in (select post_id from stream where ('video') in attachment AND source_id IN (SELECT uid2 FROM friend WHERE uid1=me()) limit 100)"
fql_var = "https://api.facebook.com/method/fql.query?access_token=" + token['access_token'] + "&query=" + posts_query + "&format=json"
data = urllib.urlopen(fql_var)
fb_stream = json.loads(data.read())
#print ast.literal_eval(json.dumps(fb_stream))
users_query = "SELECT uid, first_name FROM user WHERE uid IN (SELECT actor_id FROM (" + posts_query+"))"
fqlquery_user = "https://api.facebook.com/method/fql.query?access_token=" + token['access_token'] + "&query=" + users_query + "&format=json"
user_data2 = urllib.urlopen(fqlquery_user)
user_stream2 = json.loads(user_data2.read())
print ast.literal_eval(json.dumps(user_stream2))
謝謝,這是有道理的。我將如何將其納入python?我試過以上(在編輯中),但似乎沒有工作。 – sharataka
要使用這些,你需要一次發送它們,即一個'urllib'請求,因爲它們相互依賴。我會更新我的答案,告訴你如何。 – jadkik94