1
特定のURLのコンテンツをダウンロードすることは問題ありません。スクリーンスクレイピング - しかし、javascriptをシミュレートすることはできません
私はASP.NETページを持っています興味深いデータがボタンをクリックするとどこにあるのかをスクレイプする必要があります。どのようにしてそのボタンのクリックをシミュレートし、Webサーバーが生成するデータを取得できますか?
ボタンは、このJavaScriptを実行します:
javascript:__doPostBack('ctl00$ctl01$DefaultSiteContentPlaceHolder1$Col1$ucNavBar$rptButtons$ctl00$btnPage','')
は、今私は、特定のURLのコンテンツを取得するには、このASP.NETコードを使用しています:
public string GetDataFromUrl(string strUrl)
{
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(strUrl);
request.Accept = "text/html, application/xhtml+xml, */*";
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";
request.KeepAlive = true;
using (StreamReader streamReader = new StreamReader(request.GetResponse().GetResponseStream(), Encoding.UTF8, true))
{
return streamReader.ReadToEnd();
}
}
- EDIT
私は解決策を見つけました。ボタンをクリックしたときに起こる現象を正確に見るために、プログラムFiddlerを使用しました。それから、できるだけ実際の呼び出しと同じように見えるPOSTを作成しようとしました。