程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> asp簡單的采集代碼教程

asp簡單的采集代碼教程

編輯:ASP技巧

采集開始
第一步是分析要采集的頁面。
  使用浏覽器打開要采集的頁面(如:http://sports.sina.com.cn/k/2008-09-15/04593948756.sHtml,你可以其他頁面),打開後,點擊右鍵,查源文件。

第二步,找到要采集的內容所在位置。
假如我要采集這個頁面上的標題和內容所在的位置:
標題在<h1 id="artibodyTitle" >和</h1>之間
內容在<!-- 正文內容 begin -->和<!-- 正文內容 end -->之間
注意一下所在位置的唯一性,可以在找到後,使用編輯中的查找,看看是不是唯一的,盡可能是唯一的,如果不是,盡可能是第一個,如果再不行,只能更換

第三步,寫代碼
< %
 '功能:ASP采集代碼
  '來自:www.ASPprogram.cn
  '作者:wangsdong
  '備注:支持原創程序,請保留此信息,謝謝
url="http://sports.sina.com.cn/k/2008-09-15/04593948756.sHtml"
  str=getHTTPPage(url)
  title=strcut(str,"<h1 id=""artibodyTitle"" color:#03005C;"">","</h1>",2)
  content=strcut(str,"<!-- 正文內容 begin -->","<!-- 正文內容 end -->",2)  
  response.write "新聞標題<br><b>"&title&"</b><br><br><br>新聞內容:<br>"&content  

Function getHTTPPage(url) 
 On Error Resume Next
 dim http 
 set http=Server.createobject("Microsoft.XMLHTTP") 
 Http.open "GET",url,false 
 Http.send() 
 if Http.readystate<>4 then
  exit function 
 end if 
 getHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
 set http=nothing
 If Err.number<>0 then 
  Response.Write "<p align='center'><font color='red'><b>服務器獲取文件內容出錯</b></font></p>" 
  Err.Clear
 End If  
End Function

Function BytesToBstr(body,Cset)
 dim obJStream
 set obJStream = Server.CreateObject("adodb.stream")
 obJStream.Type = 1
 obJStream.Mode =3
 obJStream.Open
 obJStream.Write body
 obJStream.Position = 0
 obJStream.Type = 2
 obJStream.Charset = Cset
 BytesToBstr = obJStream.ReadText 
 obJStream.Close
 set obJStream = nothing
End Function

'截取字符串,1.包括起始和終止字符,2.不包括
Function strCut(strContent,StartStr,EndStr,CutType)
 Dim strHtml,S1,S2
 strHtml = strContent
 On Error Resume Next
 Select Case CutType
 Case 1
  S1 = InStr(strHtml,StartStr)
  S2 = InStr(S1,strHtml,EndStr)+Len(EndStr)
 Case 2
  S1 = InStr(strHtml,StartStr)+Len(StartStr)
  S2 = InStr(S1,strHtml,EndStr)
 End Select
 If Err Then
  strCute = "<p align='center'>沒有找到需要的內容。</p>"
  Err.Clear
  Exit Function
 Else
  strCut = Mid(strHtml,S1,S2-S1)
 End If
End Function
% >

這樣就可以的,我現在將得到的內容輸出來,你可以將這些內容寫入數據庫,這樣數據就是你的了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved