ASP通URL解析生成静态页面
跟前一篇差不多,只是方法不同,和生成速度不同。
呵呵,比较简单。
'1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码
Function getHTTPPage(url)
dim Http
set Http=createobject("Msxml2.XMLHTTP")
Http.open "post",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 err.Clear
end function
'写静态页面
function writeHtml(strHtmlFile,strContent)
Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
if (FileObject.FolderExists(Server.MapPath("../3p_html/"))) then
else
FileObject.CreateFolder(Server.MapPath("../3p_html/"))
end if
Set openFile=FileObject.CreateTextFile(server.mapPath(strHtmlFile),true) 'true重新写
openFile.writeline(strContent)
Set OpenFile=nothing
set openFile=nothing
end function
'2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换
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
呵呵,比较简单。
'1、输入url目标网页地址,返回值getHTTPPage是目标网页的html代码
Function getHTTPPage(url)
dim Http
set Http=createobject("Msxml2.XMLHTTP")
Http.open "post",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 err.Clear
end function
'写静态页面
function writeHtml(strHtmlFile,strContent)
Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
if (FileObject.FolderExists(Server.MapPath("../3p_html/"))) then
else
FileObject.CreateFolder(Server.MapPath("../3p_html/"))
end if
Set openFile=FileObject.CreateTextFile(server.mapPath(strHtmlFile),true) 'true重新写
openFile.writeline(strContent)
Set OpenFile=nothing
set openFile=nothing
end function
'2、转换乱玛,直接用xmlhttp调用有中文字符的网页得到的将是乱玛,可以通过adodb.stream组件进行转换
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