2013-03-02 46 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