数据源显示有所变化,原程序取不到数据了,请问如何修改程序?求助版主showbo

powerc1 2018-04-11 08:15:29
原贴:https://bbs.csdn.net/topics/392172689
用原贴9楼版主的程序可以取到数据,
但是最近数据源网址:http://www.gxcaipiao.com.cn/xml/notice_12.xml
显示有变化,打开后显示“This XML file does not appear to have any style information associated with it. The document tree is shown below.”,过10多秒后才会显示数据出来,用原贴9楼的程序已取不到数据,请问是怎么回事?是什么原因?怎么破?
...全文
417 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Go 旅城通票 2018-04-12
  • 打赏
  • 举报
回复
只是换了个编码而已。。由gb2312变成utf-8了啊。。改下编码就行了 注意下面的代码放到asp文件中时要存储为utf-8格式的,具体看这个:asp网站使用utf-8编码注意事项
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%
  private function BinToString(bin,encoding)
    dim obj
    set obj=Server.CreateObject("Adodb.Stream")
    obj.Type=1:obj.Mode=3:obj.Open
    obj.Write bin
    obj.Position=0:obj.Type=2:obj.Charset=encoding
    BinToString=obj.ReadText
    obj.Close:set obj=nothing
  end function
 
 
    Set oHttp = Server.CreateObject("WinHttp.WinHttpRequest.5.1")
     
    ohttp.open "get","http://www.gxcaipiao.com.cn/xml/notice_12.xml",false
    ohttp.setRequestHeader "Referer","http://www.gxcaipiao.com.cn/notice/notice_12.html"
    ohttp.send(null)


    xml=BinToString(ohttp.ResponseBody,"utf-8")‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’
    Response.CharSet="utf-8"‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’

    '这个对象没有responseXML属性,要用xmldom来加载
    set doc=server.CreateObject("microsoft.xmldom")
    doc.loadXML(xml)
    set lottery =doc.getElementsByTagName("lottery")
    l=lottery.length -1
    for i=0 to l 
      perdid=lottery(i).getAttribute("perdid")
      awardcode=lottery(i).getAttribute("awardcode")
      '其他属性...
      set level=lottery(i).getElementsByTagName("level")'获取level节点
      ll=level.length-1
      for j=0 to ll
        name=level(j).getAttribute("name")
        'level的其他属性
      next
      'pool节点的获取和遍历,和level一样,自己写
      Response.Write perdid&"|"&awardcode&"|"&name
      Response.Write "<HR>"
    next
%>
Go 旅城通票 2018-04-12
  • 打赏
  • 举报
回复
上面的代码注释打成中文状态下的了
    xml=BinToString(ohttp.ResponseBody,"utf-8")'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Response.CharSet="utf-8"'''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''

28,391

社区成员

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

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