asp中如何获取https网址的页面内容?
以下2个网址如何在asp中获取他们的页面内容??(只要能抓取其中一个,且没乱码就行)
网址1:http://proxy.ncuhome.cn/surf.aspx?dec=1&url=aHR0cHM6Ly93ZWJjYWNoZS5nb29nbGV1c2VyY29udGVudC5jb20vc2VhcmNoP3E9Y2FjaGU6ODRKdFZvdS1ONzRKOm5ld3MuaWZlbmcuY29tL21haW5sYW5kL3NwZWNpYWwvemhhbmdzaGl5dWFuYW4vKyZjZD03JmhsPXpoLUNOJmN0PWNsbmsmZ2w9anA=B64Coded!
网址2:https://webcache.googleusercontent.com/search?q=cache:84JtVou-N74J:news.ifeng.com/mainland/special/zhangshiyuanan/+&cd=7&hl=zh-CN&ct=clnk&gl=jp
我定义了以下的函数:
Function xmlHttp(sUrl, sCharSet)
On Error Resume Next
Dim xml: set xml = Server.CreateObject("Microsoft.XMLHTTP")
xml.Open "GET", sUrl, False
xml.setRequestHeader "Content-Type", "text/html;charset=" & sCharSet
xml.Send()
If Err.Number <> 0 Then
xmlHttp = ""
Exit Function
End If
If xml.readyState = 4 Then
xmlHttp = BytesToBstr(xml.responseBody, sCharSet)
End If
End Function
Function BytesToBstr(cnvUni, sCharSet)
On Error Resume Next
Dim objStream: set objStream = Server.CreateObject("adodb.stream")
With objStream
.Type = 1
.Mode = 3
.Open
.Write cnvUni
.Position = 0
.Type = 2
.Charset = sCharSet
BytesToBstr = .ReadText
.Close
End With
End Function
但是不管是用utf-8,gbk,还是gb2312获取网址1都有乱码出现,用gb2312时有少数乱码出现
网址2根本就获取不了