正文

asp天气预报采集代码2007-08-07 13:49:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/wangsdong/28283.html

分享到:

<%'此程序用来获取北京的天气预报,可以将北京换成你想要的地点。strurl="http://weather.tq121.com.cn/mapanel/index1.php?city=北京"s1="<table width=""166"" height=""15""  border=""0"" cellpadding=""0"" cellspacing=""0"">"s2="<table width=""169"" height=""37""  border=""0"" cellpadding=""0"" cellspacing=""5"">" Dim j1,l,b(3)     strTmp = GetHTTPPage(strurl)     wstr=strCut(strTmp, s1,s2,2) '   wstr=Replace(s1&wstr,"<br>","|")  wstr=Replace(wstr,"</table>","</table>|")  wstr=RemoveHTML(wstr)   wstr=Replace(wstr,Chr(10),"")  wstr=Replace(wstr,Chr(32),"")  wstr=Replace(wstr,"&nbsp;","")  str=Split(wstr,"|")  For i=0 To 3   response.write str(i)&"<br>"  nextresponse.End%><%Function regExReplace(sSource,patrn, replStr) Dim regEx, str1 str1 = sSource Set regEx = New RegExp regEx.Pattern = patrn regEx.IgnoreCase = True regEx.Global = True regExReplace = regEx.Replace(str1, replStr) End Function 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 = nothingEnd 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 IfEnd Function '去掉html代码Function RemoveHTML( strText )     Dim nPos1    Dim nPos2        nPos1 = InStr(strText, "<")     Do While nPos1 > 0         nPos2 = InStr(nPos1 + 1, strText, ">")         If nPos2 > 0 Then             strText = Left(strText, nPos1 - 1) & Mid(strText, nPos2 + 1)         Else             Exit Do         End If         nPos1 = InStr(strText, "<")     Loop         RemoveHTML = strText End Function %>

阅读(6502) | 评论(2)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册