2012-02-11 103 views
3

讓我解釋了整個事情,你在這兒可以的情況看得一清二楚:Facebook的社交網絡分析/喜歡

我在Facebook頁面和見解(無論在頁面和圖api)給了我很多有價值的信息,但我需要更深入。我正在考慮將社交網絡分析概念(中心性,中介性,特徵向量等)應用於我的網頁帖子/圖片/等上的誰喜歡/分享/評論,以便我可以找到我的網頁的關鍵用戶以及病毒式傳播其中。

讓我們以'喜歡帖子'爲例。我需要的第一件事就是獲得喜歡這個帖子的每個人的名單,這很簡單,可以通過對graphapi的一些請求來完成。現在出現棘手的部分:我需要知道所有這些喜歡這篇文章的人之間的關係,但我無法訪問他們的好友列表。要訪問好友列表,我必須讓該頁面成爲一個應用程序並請求該許可,而此時無法完成此操作。但是,facebook api允許你檢查兩個人(user1和user2)是否是朋友,他們的請求是這樣的:user1/friends/user2,爲此我不需要特殊的權限,只需要一個普通的令牌。好吧,到目前爲止,我只是得到喜歡這個帖子的用戶,並且仔細檢查哪兩個人是朋友。但問題來了:

我可以向API發出批量請求,這意味着我可以用一個請求檢查50對用戶。據我所讀,Facebook每600秒允許600個請求。簡單的數學:每10分鐘有30,000對用戶。這是一個很大的數字,應該夠了。事實並非如此。假設該帖子有1000個喜歡(根本不樂觀)。我必須檢查user1對其他999個用戶。現在,必須對剩餘的998個用戶檢查user2(不需要再次檢查user1,因爲朋友檢查可以雙向運行)。用戶3對997個用戶等等,直到user999需要針對1個用戶進行檢查。因此,我需要執行999 + 998 + 997 + 996 + ... + 3 + 2 + 1檢查或499,500個請求,這意味着將近3小時才能使數據服從Facebook的限制。 10K個喜歡將需要一個星期!

所以我的問題是:是否有任何其他方式使這項工作?獲取數據的另一種方式,還是最大的批量請求?有什麼方法可以檢索這些數據?或者這僅僅是不可能的,因爲Facebook保留重要信息?

感謝您閱讀了這一切,幫助我;)

回答

0

你正在嘗試去的信息,Facebook的不希望容易獲得。

在你沒有獲得「朋友的朋友」以同樣的方式,試圖重建社會關係需要太多對API的調用,因爲正如你所說,你需要測試針對個人對。
雖然你的問題是有效的,但從我能告訴你沒有試圖獲得這些數據來執行一些惡意行爲,恐怕在這一點上你只需要使用Facebook提供的數據您通過Insights應用程序並訪問該數據though the API as well