关于ASP检测网页编码的问题

ganggang1314179 ganggang1314179 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Function GetHttpPage(HttpUrl)
Set Http=server.createobject("MSX"&"ML2.XML"&"HTTP")
Http.open "GET",HttpUrl,False
Http.Send()
If Http.Readystate<>4 and Http.status<>200 then
Set Http=Nothing
Exit function
End if
Set ore = New RegExp
ore.Pattern = "<meta[^>]+charset=[""]?([\w\-]+)[^>]*>"
ore.Global = True
ore.IgnoreCase = True
Set Matches = ore.execute(Http.responseText)
If(Matches.count>0)Then
GetHTTPPage=bytesToBSTR(Http.responseBody,Matches(0).submatches(0))
Else
'GetHTTPPage=Http.responseText '没有找到编码则不转换编码
GetHTTPPage=bytesToBSTR(Http.responseBody,"gb2312") '没有找到编码则转换为GB2312
End if
Set Http=Nothing
End Function

上面是我写的用ASP采集时候自动检测网站源码功能,用了挺久都是正常的。
今天偶然发现采集一个页面的时候,那个页面只有几个汉字:更新出错,然后代码就会报错,报错的位置在Set Matches = ore.execute(Http.responseText)这行,更诡异的是经过我测试,如果把更新出错改成:你好你好,代码就正常运行。
搞了一个通宵还没找到问题所在,请大家帮忙看下是不是见鬼了?
...全文
评论 3
收藏 已收藏
分享
返回顶部
ganggang1314179
ASP 28,401 成员 356,940 内容