我正在尝试使用C#的HttpWebRequest来获取基于url的页面源。
在浏览器中,我这样做:
然后我被重定向到 http://brokercheck.finra.org/Search/SearchResults.aspx?SearchGroup=Individual&IndlText=&FirmText=&ZipCode=00544&ZipRadius=5&PageNumber=1 这个页面的html就是我想要的。
使用HttpWebRequest的get方法的简单方法不起作用。它只会获取搜索页面的HTML。
然后我尝试发送帖子并获取Cookie并发送带有Cookie的获取请求。 但是,响应html仍然是搜索页面的html。
答案 0 :(得分:3)
使用http嗅探器工具(WireShark或HttpWatch)通过Web浏览器捕获http请求和响应。
search.aspx页面使用:onclick =“javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(”ctl00 $ phContent $ ucUnifiedSearch $ lbtnFreeFormSearch“,”“,true,”“,”“,”false,false))“提交请求。
SearchResults.aspx页面可能会使用某些请求标头信息(例如previos页面)来确定它是否是直接访问。
您需要在SearchResults.aspx的请求中找到确切的数据。