2015-07-02 28 views
0

我的代碼是:如何提交的瀏覽器類型下載Web流時

string result = new WebClient().DownloadString("https://www.facebook.com/profile.php?id=123456789"); 

結果給我支持的瀏覽器。 體類= \「unsupportedBrowser

我打算這樣做。 從Facebook下載源代碼的特定頁面

所遇問題: 我從Facebook的數據流,Facebook的阻止我,因爲我從應用程序訪問,由於這不是一個有效的瀏覽器

後市展望:。如何我可以提交瀏覽器類型,例如Chrome騙了Facebook,因爲這是一個有效的瀏覽器

+0

製作刮刀是我們嗎? – AlphaDelta

+0

什麼是刮板? –

+0

[網絡抓取](https://en.wikipedia.org/wiki/Web_scraping) – AlphaDelta

回答

0

您可以向webclient對象添加標題。不過,我更喜歡去HttpWebRequest/HttpWebResponse方法刮,因爲我相信它提供了更多的選擇。

Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); 
     Headers.Add("Accept-Encoding", "gzip, deflate"); 
     Headers.Add("Accept-Language", "en-US,en;q=0.5"); 
     Headers.Add("Cookie", "has_js=1"); 
     Headers.Add("DNT", "1"); 
     Headers.Add("Host", host); 
     Headers.Add("Referer", url); 
     Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0"); 
+0

@。@你能給我舉個例子嗎,我太久沒有碰過http web請求了,也許你可以提供第二個選項供人閱讀和學習 –

+0

也請注意'Accept-Encoding:gzip,deflate '告訴服務器使用GZip壓縮/壓縮響應,一旦你得到響應,你需要對它進行膨脹/解壓縮以獲得實際響應。 – AlphaDelta

+0

我應該插入什麼主機和引用值? –