使用c#抓取Jquery Ajax网页

时间:2012-12-25 08:20:58

标签: c# ajax web-scraping

我尝试使用c#.net 3.5应用程序废弃网页但我无法删除整页,因为某些内容通过jquery Ajax显示。

see this

这是我的代码

 private void button1_Click(object sender, EventArgs e)
    {
        string url = "http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2012-12-16&meetingId=18&isFullMeeting=true";

        WebClient w = new WebClient();
        string s = w.DownloadString(url);


    }

我需要来自我认为的Ajax展示的网站的比赛结果。

2 个答案:

答案 0 :(得分:0)

http://www.racingpost.com/greyhounds/result_by_meeting_full.sd?r_date=2012-12-16&meeting_id=18

如果您将Chrome用作网络浏览器,则可以打开开发人员工具(F12)并查看“网络”标签,了解页面加载后请求的资源。上面的URL是我注意到的其中一个似乎拉了一些结果。如果您知道或可以解析日期和meeting_id,您可以直接与主页面进行通话。

另一个可能的选择是使用实际的web browser control并在所有内容加载完成后扫描DOM。

答案 1 :(得分:-1)

我认为您需要使用System.Net命名空间 您需要做的是使用这样的帮助创建HttpRequest

WebRequest webRequest = WebRequest.Create("http://www.racingpost.com/greyhounds/result_home.sd#resultDay=2012-12-16&meetingId=18&isFullMeeting=true");
WebResponse webResp = webRequest.GetResponse();

我想这也可以完全响应Ajax数据。