一个例子:从新浪提取上海天气的vbs

80酷酷网    80kuku.com

  新浪起始很简单的。分析一下抓下来的代码,然后处理一下就行了。


'文件:weather.vbs  放入计划任务,每天早上8:30执行,生成饱含
'文件供首页使用
'执行方式:cscript D:\上海国家会计学院网站\内部社区\vbs\weather.vbs
'********************************************************************************************************
' Symantec ScriptBlocking Authenticated File
' E9815BB2-5813-400B-9ED5-156350335DE3

    const incFilePath            = "D:\上海国家会计学院网站\内部社区\web\club\"        '包含文件所在目录,最后的\号是必须的
    const logfile                = "d:\club-job-log.txt"                    '日志文件
    const incWeather            = "weather-report.asp"        '包含文件所在目录,最后的\号是必须的
    dim fs
    dim f
    on error resume next

    Set fs        = CreateObject("Scripting.FileSystemObject")
     dim wstr
     wstr=getHTTPPage("http://sh.sina.com.cn/")
     'Response.Write wstr
     
     if instr(wstr,"<img src=http://www.163design.net/a/y/images/sina_sh/new/sh24.gif width=172 height=17>")>0 then
        wstr=mid(wstr,instr(wstr,"<img src=http://www.163design.net/a/y/images/sina_sh/new/sh24.gif width=172 height=17>")+len("<img src=http://www.163design.net/a/y/images/sina_sh/new/sh24.gif width=172 height=17>"))
        wstr=mid(wstr,instr(wstr,"<table width=160 border=0 cellspacing=0 cellpadding=0>"))
        wstr=mid(wstr,1,instr(wstr,"</table>")+len("</table>"))
     end if     
     wstr=replace(wstr,"<tr><td colspan=3 align=right><a err.description
         end if
    set fs        = nothing

    Sub writeLog(Msg)
        On Error Resume Next
        Dim f
        Set f = fs.OpenTextFile(logfile,8,true)
        f.WriteLine now & " - " & Msg
        f.close
     End Sub

    function getHTTPPage(url)
        on error resume next
        dim http
        set http=createobject("MSXML2.XMLHTTP")
        Http.open "GET",url,false
        Http.send()
        if Htt

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: