| 网站首页 | 建站学院 | 资源下载 | 建站教程 | 图片素材 | 网贝社区 | 
您现在的位置: 网贝建站 >> 建站学院 >> ASP技术 >> 远程脚本 >> 正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
没有相关文章
一个例子:从新浪提取上海天气的vbs         ★★★
一个例子:从新浪提取上海天气的vbs
作者:佚名 文章来源:网海之贝 点击数: 更新时间:2004-8-30 20:31:32
起始很简单的。分析一下抓下来的代码,然后处理一下就行了。


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

    const incFilePath            = "D:上海国家会计学院网站内部社区webclub"        '包含文件所在目录,最后的号是必须的
    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=images/sina_sh/new/sh24.gif width=172 height=17>")>0 then
        wstr=mid(wstr,instr(wstr,"<img src=images/sina_sh/new/sh24.gif width=172 height=17>")+len("<img src=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 href=http://weather.sina.com.cn/>其他城市</a><font color=#015B7B>>></font></td></tr>","")
     dim pos1,pos2
     pos1=instr(wstr,"<tr>")
     pos2=instr(pos1,wstr,"</tr>")
     wstr=right(wstr,len(wstr)-pos2-4-4)
     wstr=replace(wstr,"</table>","")
    wstr=replace(wstr,"width=35","")
    wstr=replace(wstr,"width=45","")
    wstr=replace(wstr,"width=60","")
     'Response.Write wstr
     if err.number=0 then
        Set f = fs.CreateTextFile(incFilePath & incWeather,true)   
        f.write wstr
        set f = nothing
     else
        wscript.echo 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 Http.readystate<>4 then
            exit function
        end if
        getHTTPPage=bytes2BSTR(Http.responseBody)
        set http=nothing
        if err.number<>0 then err.Clear                 
    end function
   
    Function bytes2BSTR(vIn)
        dim strReturn
        dim i,ThisCharCode,NextCharCode
        strReturn = ""
        For i = 1 To LenB(vIn)
            ThisCharCode = AscB(MidB(vIn,i,1))
            If ThisCharCode < &H80 Then
                strReturn = strReturn & Chr(ThisCharCode)
            Else
                NextCharCode = AscB(MidB(vIn,i+1,1))
                strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
                i = i + 1
            End If
        Next
        bytes2BSTR = strReturn
    End Function   


'***********************************************

       
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)