正在浏览:一小偷类!!有兴趣的可以看看
            类代码 (cls.asp) 
<% 
Class clsThief 
Private strUrl    ' 偷取地址 
Private strValue  ' 偷取的内容,所有内容 
Private strResult ' 偷取结果,可以具体某一块内容 
Private flag      ' 是否已经偷过 
'-------初始化类--------' 
Private Sub Class_Initialize() 
    strUrl="" 
 strValue="" 
 strResult="" 
 flag=false 
End Sub 
'------类结束-----------' 
Private Sub Class_Terminate() 
End Sub 
'------初始化url属性----' 
Public Property Let url(ByVal iurl) 
    strUrl = iurl 
End Property 
'------返回输出内容----' 
public property get value  
    value=strValue 
end property 
public property get result  
    result=strResult 
end property 
'------------文字处理-----------' 
private 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 
'-------文字处理-------' 
private Function Ichange(str) 
    Dim finalStr 
 Dim icharCode 
 Dim inextCode 
    For i = 1 To lenb(str) 
        icharCode = ascb(midb(str,i,1)) 
        If icharCode < &H80 Then 
            finalStr = finalStr & chr(icharCode) 
        Else 
            inextCode = ascb(midb(str,i+1,1)) 
            finalstr = finalstr & chr(clng(icharCode) * &H100 + cint(inextCode)) 
            i = i + 1 
        End If 
    Next 
Ichange = finalStr 
End Function 
'-------内容抓取--------' 
Public sub Seize() 
    if strUrl<>"" then 
     dim iconnect 
  Set iconnect = CreateObject("Microsoft.XMLHTTP") 
        iconnect.open "GET",strUrl,false  
        iconnect.send() 
  strValue = BytesToBSTR(iconnect.responseBody,"GB2312") 
  flag=true 
  set iconnect = nothing 
  if err.number<>0 then err.Clear 
 else 
     response.write("请设置url的属性,即url地址") 
 end if 
end sub 
'------内容分析------' 
Public sub Assay(head,headCusor,bot,botCusor) 
    if flag = false then call Seize() 
    if instr(strValue,head) and instr(strValue,bot) then 
  dim inum 
  inum = len(strValue)-instr(strValue,head)-len(head)-headCusor 
  strValue=right(strValue,inum) 
     inum = instr(strValue,bot)-1+botCusor 
  strResult=left(strValue,inum) 
 else 
  strResult = "没有匹配到相关记录,请检查开始标记代码是否唯一" 
    end if  
end sub 
'----替换空格及回车行----' 
public sub Shift()  
if flag= false then call Seize() 
    strResult=replace(replace(strResult , vbCr,""),vbLf,"") 
end sub 
'------对内容自定义替换----' 
Public sub Change(oldStr,newStr) 
    if flag=false then call Seize() 
 strResult = replace(strResult,oldStr,newStr) 
end sub 
'--------自定义正则进行匹配---' 
public sub pickByReg(patrn)  
    if isGet_= false then call Seize() 
    dim tempReg,match,matches,content 
    set tempReg=new RegExp 
    tempReg.IgnoreCase=true 
    tempReg.Global=true 
    tempReg.Pattern=patrn 
    set matches=tempReg.execute(value_) 
    for each match in matches 
    content=content&match.value&"<!--lkstar-->" 
    next 
    strValue=content 
    set matches=nothing 
    set tempReg=nothing 
end sub 
'--------如果有首页文件则转入-----------' 
Public sub CheckFile(folderName,fileName) 
    dim url 
 Set fs=Server.CreateObject("Scripting.FileSystemObject") 
 if fs.FolderExists(server.MapPath("./")&"\"&folderName&"\"&fileName) then  
     set fs = nothing 
  url = folderName&"/"&fileName 
  response.write url 
  'response.redirect url 
 end if 
end sub 
'------生成文件------' 
Public sub MakeFile(folderName,fileName) 
    Set fs=Server.CreateObject("Scripting.FileSystemObject") 
    if folderName<>"" then 
     if not fs.FolderExists(server.MapPath("/"&folderName&"/")) then  
            response.write "文件不存在" 
      fs.CreateFolder(folderName) 
     else 
         response.write "文件存在" 
        end if 
 end if 
    Set CrFi=fs.CreateTextFile(server.MapPath("./")&"\"&folderName&"\"&fileName) 
        Crfi.Writeline(strResult) 
    set CrFi=nothing 
    set fs=nothing 
 dim url 
 url = folderName&"/"&fileName 
    response.redirect url 
end sub 
'-------查看偷出的代码----' 
public sub look() 
    dim tempstr 
    tempstr="<SCRIPT>function runEx(){var winEx2 = window.open("""", ""winEx2"", ""width=500,height=300,status=yes,menubar=no,scrollbars=yes,resizable=yes""); winEx2.document.open(""text/html"", ""replace""); winEx2.document.write(unescape(event.srcElement.parentElement.children[0].value)); winEx2.document.close(); }function saveFile(){var win=window.open('','','top=10000,left=10000');win.document.write(document.all.asdf.innerText);win.document.execCommand('SaveAs','','javascript.htm');win.close();}</SCRIPT><center><TEXTAREA id=asdf name=textfield rows=32  wrap=VIRTUAL cols=""120"">"&strResult&"</TEXTAREA><BR><BR><INPUT name=Button onclick=runEx() type=button value=""查看效果"">  <INPUT name=Button onclick=asdf.select() type=button value=""全选"">  <INPUT name=Button onclick=""asdf.value=''"" type=button value=""清空"">  <INPUT onclick=saveFile(); type=button value=""保存代码""></center>" 
    response.Write(tempstr) 
end sub 
end class 
%> 
引用页(test.asp) 
<!--#Include File="cls.asp"--> 
<% 
  dim myThief,value 
  set myThief = new clsThief   '实例化类 
  myThief.CheckFile "","index.html"  '检测是否已经偷过并生成 
  myThief.url="http://www.sohu.com"  '目标URL 
  myThief.Seize                                                   '开始偷取 
  myThief.Assay "<html>","-7","</html>","7"        '剪切标记 
  myThief.Change "择优","浪人"                        '进行替换 
  value = myThief.result                                      '最后得到的内容 
  myThief.MakeFile "","index.html"                      '生成文件 
  set myThief = nothing 
  'response.write value 
%>