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

ganggang1314179 2015-08-10 03:33:34
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)这行,更诡异的是经过我测试,如果把更新出错改成:你好你好,代码就正常运行。
搞了一个通宵还没找到问题所在,请大家帮忙看下是不是见鬼了?
...全文
190 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangtututu 2015-08-22
  • 打赏
  • 举报
回复
为什么一定要用中文?? 改用 1 或者 0 之类的 不用考虑编码
ganggang1314179 2015-08-12
  • 打赏
  • 举报
回复
ganggang1314179 2015-08-10
  • 打赏
  • 举报
回复
没人帮忙下吗?

28,401

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧