2012-01-05 51 views
0

Facebook通過他們的廣告平臺提供有關人口統計的數據。如何刮(使用Python)?如何刮臉Facebook的廣告數據?

1)去http://www.facebook.com/ads/create/

2.)填寫表格

3.)現在,存在數據

見樣本圖像:HTTP:// www.webdistortion.com /wp-content/uploads/2010/10/fb4.jpg (我是新用戶,所以我不能發佈圖片)

問題:如何刮呢?

我的想法:

1)使用機械化 - 也許它可以填寫表格,但估計人數(112960中的例子)是不是在源代碼中可見的,因此,你不能分析它=>我們應該做一些其他的技巧,但是什麼?

2)使用硒(或風車) - 我的記錄是:打開facebook.com - >點擊廣告 - >點擊製作廣告 - > ...

不幸的是,這已經失敗了。登錄:

[info] Executing: |open |/| | 

[info] Executing: |clickAndWait | link=Advertising | | [error] isNewPageLoaded found an old pageLoadError: Error: Permission denied for >> to get property Location.href [error] Permission denied for to get property Location.href [info] Executing: |clickAndWait | css=span.uiButtonText | | [error] Unexpected Exception: fileName -> chrome://selenium-ide/content/selenium-core/scripts/selenium-browserbot.js, lineNumber -> 840

有證據表明,有可能刮這樣的數據:http://www.checkfacebook.com/

解決這個問題是不是數據本身(OFC,這個數據肯定是有趣的)更有趣。我知道有解決方案,但我不能拿出任何解決方案。這是殺了我,請幫助。

+0

只是一個簡短的評論。當你說「在源代碼中不可見」時,你的意思是在原始源代碼中不可見。如果它顯示在屏幕上,那麼它就是HTML,因此會出現在文檔中。 – 2012-01-05 23:46:54

回答

0

我不太清楚你的意思是通過抓取數據。您的意思是使用公開的API(https://developers.facebook.com/docs/reference/ads-api/)並調用覆蓋率估算函數(https://developers.facebook.com/docs/reference/ads -API/reachestimate /)?

+0

我的目標是獲取數據 - 也許我可以通過Ads Api或使用機械化來填充「創建廣告」表單等。我不知道。我在發佈之前不知道Ads API,但使用Ads API需要註冊。 – user1133203 2012-01-06 19:23:31

+0

正確。在嘗試使用任何API之前,您應該使用Facebook註冊您的應用。重新確認電話是否適合您? – DMCS 2012-01-06 22:13:01

+0

您必須申請訪問Ads API。只有當應用位於Ads API白名單中時,應用才能訪問Ads API。其中一個要求是:通過Facebook Ads投放超過1000萬次廣告展示(https://developers.facebook.com/marketingapis/apply/)這意味着我無法使用reachestimate通話。 – user1133203 2012-01-30 01:01:10