采用XMLHTTP编写一个天气预报的程序
本人就职于一个本地门户网站,每天网站上的天气都得更新。久而久之感到相当麻烦,于是写了一个定时的新闻小偷,帖出来大家参考一下要求: 支持fso, 服务器udp tcp/ip 没有屏蔽
下面是小偷的内容
filename tianqi.
write by niaoked qq408611119
www.acnow.net
<%
if hour(now)=9 and minute(now)<30 then
getcategories()
end if
function getcategories()
on error resume next
dim oxml(标准化越来越近了)http as object
dim ocategories as object
dim bodytext
dim pos,pos1
set oxml(标准化越来越近了)http = createobject("microsoft.xml(标准化越来越近了)http")
--- set the xml(标准化越来越近了)http call and issue send (no parm as category
--- is included in url
oxml(标准化越来越近了)http.open "get","https://weather.china.com.cn/travel_gntq.php?cityid=56196&cityname=绵阳",false 这个地方换成你自己的地址
oxml(标准化越来越近了)http.send
--- load the response into the categories data island
bodytext=oxml(标准化越来越近了)http.responsebody
bodytext=bytestobstr(bodytext,"gb2312")
pos=instr(bodytext,"<body")
pos1=instr(bodytext,"</body>")
bodytext=mid(bodytext,pos,pos1)
bodytext=split(bodytext,"<table")
pos=instr(bodytext(4),"<tr")
pos1=instr(bodytext(4),"</tr>")
body=mid(bodytext(4),pos,len(bodytext(4))-pos)
body=split(body,"</table>")
body1=split(replace(replace(replace(body(0),"<br>",""),"</td>",""),"</tr>",""),"天气")
for i= 1 to ubound(body1)
body3=split(body1(i),"<td")
weather=weather & "document.write("""& i&"$" & "天气" & htmlencode(trim(body3(0))) & """);" & vbcrlf
next
weather=replace(weather,"1$","<font color=#ffffff>【今天】</font>")
weather=replace(weather,"2$","<font color=#ffffff>【明天】</font>")
weather=replace(weather,"3$","<font color=#ffffff>【后天】</font>")
set fs = createobject("scripting.filesystemobject")
set f = fs.createtextfile(request.servervariables("appl_physical_path")& "tq.js", true)
f.write("document.write(绵阳天气预报:);" &vbcrlf & replace(weather,"<br>",""))
f.close
set f = nothing
set fs = nothing
response.write "绵阳天气预报:"& weather
set oxml(标准化越来越近了)http = nothing
if err.number<>0 then
response.write "出错了,错误描述:"&err.description & "<br>错误来源"& err.source
response.end()
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