• 小偷函数


    '==================================================
    '函数名:GetHttpPage
    '作  用:获取网页源码
    '参  数:HttpUrl ------网页地址
    '==================================================
    Function GetHttpPage(HttpUrl)
       If IsNull(HttpUrl)=True Or Len(HttpUrl)<18 Or HttpUrl="$False$" Then
          GetHttpPage="$False$"
          Exit Function
       End If
       Dim Http
       Set Http=server.createobject("MSXML2.XMLHTTP.3.0")
       Http.open "GET",HttpUrl,False
       Http.Send()
       If Http.Readystate<>4 then
          Set Http=Nothing
          GetHttpPage="$False$"
          Exit function
       End if
       GetHTTPPage=bytesToBSTR(Http.responseBody,"GB2312")
       Set Http=Nothing
       If Err.number<>0 then
          Err.Clear
       End If
    End Function

    '==================================================
    '函数名:BytesToBstr
    '作  用:将获取的源码转换为中文
    '参  数:Body ------要转换的变量
    '参  数:Cset ------要转换的类型
    '==================================================
    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
    '==================================================
    '函数名:GetBody
    '作  用:截取字符串
    '参  数:ConStr ------将要截取的字符串
    '参  数:StartStr ------开始字符串
    '参  数:OverStr ------结束字符串
    '参  数:IncluL ------是否包含StartStr
    '参  数:IncluR ------是否包含OverStr
    '==================================================
    Function GetBody(ConStr,StartStr,OverStr,IncluL,IncluR)
       If ConSt*="$**lse$" or ConStr="" or IsNull(ConStr)=True Or StartStr="" or IsNull(StartStr)=True Or OverStr="" or IsNull(OverStr)=True Then
          GetBody="$False$"
          Exit Function
       End If
       Dim ConStrTemp
       Dim Start,Over
       ConStrTemp=Lcase(ConStr)
       StartStr=Lcase(StartStr)
       OverStr=Lcase(OverStr)
       Start = InStrB(1, ConStrTemp, StartStr, vbBinaryCompare)
       If Start<=0 then
          GetBody="$False$"
          Exit Function
       Else
          If IncluL=False Then
             Start=Start+LenB(StartStr)
          End If
       End If
       Over=InStrB(Start,ConStrTemp,OverStr,vbBinaryCompare)
       If Over<=0 Or Over<=Start then
          GetBody="$False$"
          Exit Function
       Else
          If IncluR=True Then
             Over=Over+LenB(OverStr)
          End If
       End If
       GetBody=MidB(ConStr,Start,Over-Start)
    End Function
    '==================================================
    '函数名:GetArray
    '作  用:提取链接地址,以||分隔
    '参  数:ConStr ------提取地址的原字符
    '参  数:StartStr ------开始字符串
    '参  数:OverStr ------结束字符串
    '参  数:IncluL ------是否包含StartStr
    '参  数:IncluR ------是否包含OverStr
    '==================================================
    Function GetArray(Byval ConStr,StartStr,OverStr,IncluL,IncluR)
       If ConSt*="$**lse$" or ConStr="" Or IsNull(ConStr)=True or StartStr="" Or OverStr="" or  IsNull(StartStr)=True Or IsNull(OverStr)=True Then
          GetArray="$False$"
          Exit Function
       End If
       Dim TempStr,TempStr2,objRegExp,Matches,Match
       TempStr=""
       Set objRegExp = New Regexp
       objRegExp.IgnoreCase = True
       objRegExp.Global = True
       objRegExp.Pattern = "("&StartStr&").+?("&OverStr&")"
    '  objregEx.Pattern = "http://(.+?)\.(jpg|gif|png|bmp)" '定义文件后缀

       Set Matches =objRegExp.Execute(ConStr)
       For Each Match in Matches
          TempStr=TempStr & "||" & Match.Value
       Next
       Set Matches=nothing

       If TempStr="" Then
          GetArray="$False$"
          Exit Function
       End If
       TempStr=Right(TempStr,Len(TempStr)-7)
       If IncluL=False then
          objRegExp.Pattern =StartStr
          TempStr=objRegExp.Replace(TempStr,"")
       End if
       If Inclu*=**lse then
          objRegExp.Pattern =OverStr
          TempStr=objRegExp.Replace(TempStr,"")
       End if
       Set objRegExp=nothing
       Set Matches=nothing
       
       TempStr=Replace(TempStr,"""","")
       TempStr=Replace(TempStr,"'","")
       TempStr=Replace(TempStr," ","")
       TempStr=Replace(TempStr,"(","")
       TempStr=Replace(TempStr,")","")

       If TempStr="" then
          GetArray="$False$"
       Else
          GetArray=TempStr
       End if
    End Function
  • 相关阅读:
    "Login failed for user 'NT AUTHORITYSYSTEM'. 原因: 无法打开明确指定的数据库。"异常处理
    Windows 服务器自动重启定位
    扩展数据组码和说明
    C# CAD二次开发 扩展数据的几个重要方法
    CAD二次开发 eLockViolation 错误解决方法
    看kean 博客---- CAD.NET
    一个GIS研究生的自白
    C# 调用CAD系统命令
    <转载>Win32控制台工程中创建窗口
    <转载>无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用
  • 原文地址:https://www.cnblogs.com/MaxIE/p/550367.html
Copyright © 2020-2023  润新知