最近在做“信息采集”,簡單說就是:遠程post一個地址,然後獲得返回的html,再使用正則過濾出你想要的信息。但是對於象.net中GridView自帶的分頁沒有任何類似page=2的參數,該如何post,以獲得某頁的html?
如下面這個地址:
http://61.240.36.105/colorring/ringshop.jsp
你如何點那個分頁按鈕,上面的地址始終不變,他到底post那些參數到服務器,然後再返回具體頁的數據?憑空猜想和查看他的html源碼都很困難得到。下面咱們的利器就橫空出世:HttpWatch
先看介紹:
強大的網頁數據分析工具。集成在Internet Explorer浏覽器中。只需要選擇相應的網站,軟件就可以對網站與IE之間的需求回復的通訊情況進行分析並在同一界面顯示其相應日志記錄。每一個HTTP記錄都可以詳細的分析其 Cookies、消息頭、字符查詢等信息。支持HTTPS及分析報告輸出為XML、CSV等格式。
下面就開始獲得http://61.240.36.105/colorring/ringshop.jsp的分頁post到服務器的具體參數:
具體參數如圖:
這下參數就全赤裸裸的出來啦,現在你只需post這個地址就可以:
stringappendStr=@"http://61.240.36.105/colorring/ringshop.jsp?$FORMNAME=colorring_ringlist&$parameters=colorring_ringlist!"+num+"!225!20!4489!"+((num-1)*20)+"!"+(((num-1)*20)+20);
其中這個num是個頁數。
以下是登錄cnblogs的時候具體post到服務器的參數: