Name: 夢小陽 Email: webmaster#gznets.com Title: 網(wǎng)頁內(nèi)容截取組件 From: http://www.oesun.com/blog/blogview.asp?logID=263
下載組件及測試源碼:點擊下載
技術(shù)要點:可以對固定的字符串進行截取其中的某一部分,亦可以對某一網(wǎng)頁進行頁面截取. 安裝方法:把上面的文件包下載后,解壓后,雙擊reg.bat即可注冊組件.然后把里面的test1.asp,test2.asp,test3.asp拷貝到你的IIS虛擬目錄下面.然后通過瀏覽器瀏覽(具體的IIS配置等本文略過)
下面介紹里面的方法調(diào)用: getUrl(url)方法 該方法是返回某個網(wǎng)頁的內(nèi)容.參數(shù)只有一個.下面看看調(diào)用的例子test1.asp:
<% Dim test,url Set test = Server.CreateObject("gzNets.echars") url="http://www.gzNets.com/error.html" Response.Write test.getUrl(url) Set test=nothing %>
上面的例子將返回http://www.gzNets.com/error.html的頁面內(nèi)容
manage方法 manage方法有三種方式,在調(diào)用manage方法之前要先對一系列的參數(shù)進行傳值.
方式一 功能:返回標(biāo)志1與標(biāo)志2之間的內(nèi)容,并且包括標(biāo)志1與標(biāo)志2本身. 例如,返回<table與</table>之間的內(nèi)容,并且包括了標(biāo)志<table和</table>
參數(shù):
inputStr 傳入被截取的字符串(該字符串可以用剛才的getUrl()方法返回的網(wǎng)頁內(nèi)容)
inputTag1 傳入標(biāo)志1
inputTag2 傳入標(biāo)志2
inputType 傳入方式0
outPutStr 輸出最后截取到的字符串
例子test2.asp: <% Dim test,str Set test = Server.CreateObject("gzNets.echars") str="這是測試的<table border=1><tr><td>test</td></tr></table>測試" test.inputStr=str test.inputTag1="<table" test.inputTag2="</table>" test.inputType=0 test.manage Response.Write test.outPutStr &"<br>" test.inputStr=str test.inputTag1="<td" test.inputTag2="</td>" test.inputType=0 test.manage Response.Write test.outPutStr &"<br>"
Set test=nothing %>
方式二 功能:返回標(biāo)志1與標(biāo)志2之間的內(nèi)容,但不包括標(biāo)志1與標(biāo)志2本身. 例如,返回<table與</table>之間的內(nèi)容,但不包括了標(biāo)志<table和</table>
參數(shù):
- inputStr 傳入被截取的字符串(該字符串可以用剛才的getUrl()方法返回的網(wǎng)頁內(nèi)容)
- inputTag1 傳入標(biāo)志1
- inputTag2 傳入標(biāo)志2
- inputType 傳入方式1(注意這里的傳入方式必須改成1)
- outPutStr 輸出最后截取到的字符串
例子可以自己修改一下test2.asp,把里面的inputType改成1看看效果~~~:
方式三 功能:要理解這個功能比較困難.我們通過一些例子來說明吧. 例如,字符串str="這是測試的<table border=1><tr><td>test</td></tr></table>測試",我們可以通過查找"<tr>",因為"<tr>"只有一個(當(dāng)然其它也有唯一的標(biāo)志),然后再查找"<tr>"前面的"<".然后設(shè)置尾部標(biāo)志.我們可以通過查找"</tr>",然后查找"</tr>"后面的">".這樣首位置和尾位置都確定了.
參數(shù):
- inputStr 傳入被截取的字符串(該字符串可以用剛才的getUrl()方法返回的網(wǎng)頁內(nèi)容)
- inputTag1 傳入標(biāo)志1 例如上面說的"<tr>"
- inputPos1 傳入向右搜索,還是向左搜索.有兩個值:+表示向右 -表示向左
- inputTag1Tag 傳向標(biāo)志1的參考標(biāo)志.就是要向右向左搜索的標(biāo)志.例如上面說的"<"
- inputNum1 傳入搜索標(biāo)志1的右或左邊的第幾個inputTag1Tag
- inputTag2 傳入標(biāo)志2 例如上面說的"</tr>"
- inputPos2 傳入向右搜索,還是向左搜索.有兩個值:+表示向右 -表示向左
- inputTag2Tag 傳向標(biāo)志1的參考標(biāo)志.就是要向右向左搜索的標(biāo)志.例如上面說的">"
- inputNum2 傳入搜索標(biāo)志2的右或左邊的第幾個inputTag2Tag
- inputType 傳入方式2(注意這里的傳入方式必須改成21)
- outPutStr 輸出最后截取到的字符串
例子test3.asp: 目的:我們將取出藍(lán)色理想(m.95time.cn)首頁底部的"關(guān)于站點 | 廣告服務(wù) | 聯(lián)系站長 | 版權(quán)隱私 | 友情鏈接 | 投稿熱線 | 網(wǎng)站地圖"內(nèi)容 <% Dim test,url Set test = Server.CreateObject("gzNets.echars") url="http://m.95time.cn/index.asp" test.inputStr=test.getUrl(url) test.inputTag1="關(guān)于站點" test.inputNum1=1'表示是只有一個 test.inputPos1="-"'表示是向左搜索 test.inputTag1Tag="<table"'標(biāo)志1的參考標(biāo)志 test.inputTag2="版權(quán)所有" test.inputNum2=1 test.inputPos2="+"'表示向前 test.inputTag2Tag="</table>" test.inputType=2 test.manage Response.Write test.outPutStr Set test=nothing %>
由于本人的空余時間非常之少 ,所以本文以及本組件寫得非常倉促,肯定有不足或不完善之處,望各位網(wǎng)友指點.非常謝謝
出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色
◎進入論壇網(wǎng)絡(luò)編程版塊參加討論
|