2013-03-02 55 views
0

我有一個這樣的網站http://www.lfp.fr/ligue1/feuille_match/52255,我想切換infoMatch和Statistiques之間的標籤,但它只顯示第一頁的數據,當我使用螢火蟲來檢查REPONSE它給了我這樣的: GET showStatsJoueursMatchmatchId = 52255 & domId = 112 & EXTID = 24 &活= 0 & domNomClub = AJ +歐塞爾& extNomClub = FC +南特基於AJAX的請求C上的網站報廢C#

string url="http://www.lfp.fr/ligue1/feuille_match/52255"; 
        string getData = "?matchId=52255&domId=112&extId=24&live=0&domNomClub=AJ+Auxerre&extNomClub=FC+Nantes"; 
        System.Uri uriObj = new System.Uri(url); 
        String Methode = "GET"; 
        lgRequest = (HttpWebRequest)WebRequest.CreateDefault(uriObj); 
        lgRequest = (HttpWebRequest)WebRequest.CreateDefault(uriObj);  
    lgRequest.Method = Methode; 
    lgRequest.ContentType = "text/html"; 
        SetRequestHeader("Accept", "text/html"); 
        SetRequestHeader("Cache-Control", "no-cache"); 
        SetRequestHeader("Content-Length", getData.Length.ToString()); 

    StreamWriter stream = new StreamWriter 
       (lgRequest.GetRequestStream(), Encoding.ASCII); 
      stream.Write(body); 
      stream.Close(); 
      lgResponse = (HttpWebResponse)lgRequest.GetResponse(); 

但它給我的錯誤「不能用這個動詞類型發送內容主體。「當我在Method中使用「POST」時,它會給出HTML的響應,但只有第一頁數據不是統計信息。

回答

2

嘗試以下地址:http://www.lfp.fr/ligue1/feuille_match/showStatsJoueursMatch?matchId=52255&domId=112&extId=24&live=0&domNomClub=AJ+Auxerre&extNomClub=FC+Nantes

就像這樣:

using System; 
using System.Net; 

class Program 
{ 
    static void Main() 
    { 
     using (var client = new WebClient()) 
     { 
      string result = client.DownloadString("http://www.lfp.fr/ligue1/feuille_match/showStatsJoueursMatch?matchId=52255&domId=112&extId=24&live=0&domNomClub=AJ+Auxerre&extNomClub=FC+Nantes"); 
      Console.WriteLine(result); 
     } 
    } 
} 

請注意,我用的WebClient代替WebRequest這使得代碼更短,更容易理解。

一旦從遠程站點下載了HTML,您可以考慮使用HTML解析庫(如HTML Agility Pack)從您已獲取的標記中提取有用的信息。

+1

哦!我的聲望低於15,所以我不能坦克你的答案,但我愛你Darin:*嚴重的是我浪費了我的7個小時,你在10分鐘內給我解決方案:* muaaaaaaaaaaaah – 2013-03-02 17:03:53