2012-12-25 139 views
0

我嘗試使用c#.net 3.5應用程序來取消網頁,但我無法取消整個頁面,因爲有些內容通過jQuery Ajax顯示。jquery Ajax使用c的網頁抓取#

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); 


    } 

我需要比賽結果從網站,該網站顯示阿賈克斯,我認爲。

+0

我發現了問題的替代方案,但沒有回答我的問題。我正在使用ajax url直接http://www.racingpost.com/greyhounds/result_by_meeting_full.sd?r_date=2012-12-12&meeting_id=18所以它解決了我,但我們可以做與AJAX網址? – DevelopmentBucket

+0

你能解釋一下你最近評論中的問題嗎? (你是什麼意思,「我們可以用ajax url做什麼?」) –

回答

0

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

如果您使用Chrome的Web瀏覽器,你可以打開開發者工具(F12),並期待在「網絡」選項卡,看到在頁面加載後請什麼樣的資源。上面的URL是我注意到的其中一個似乎可以得出一些結果的地方。如果您知道或可以解析日期和meeting_id,則可以直接與您在主頁面上進行通話。

另一種可能的選擇是使用實際的web browser control並在加載完成後掃描DOM。

+0

是的,它的幫助已經做到了,找到了解決方案,但是我們可以不這樣做。只有用C#代碼? – DevelopmentBucket

-1

我認爲你需要使用System.Net命名空間。
你需要做的是,像這樣

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數據完全反應以及幫助創造HttpRequest