我一直在尝试获取此处的xml数据:http: //www.thetvdb.com/api/D1BD82E2AE599ADD/mirrors.xml
您会注意到在Web浏览器中可以轻松读取xml数据.但是,当我尝试使用urllib2加载它时,会出现以下问题.(根据http://www.doughellmann.com/PyMOTW/urllib2/上的教程):
import urllib2
response = urllib2.urlopen('http://www.thetvdb.com/api/D1BD82E2AE599ADD/mirrors.xml')
print response.read()
Run Code Online (Sandbox Code Playgroud)
输出:
'<?xml version="1.0" encoding="UTF-8" ?>\n<Mirrors>\n <Mirror>\n <id>1</id>\n <mirrorpath>http://thetvdb.com</mirrorpath>\n <typemask>7</typemask>\n </Mirror>\n</Mirrors>\n'
Run Code Online (Sandbox Code Playgroud)
我已尝试过其他网站(例如:python.org),它似乎有效.这个问题似乎是独立于库的(我对urllib,httplib,httplib2等有同样的问题),问题似乎是我想要获取的网站特有的.
是什么赋予了?
编辑:好吧,好像我对"应该"看到的东西感到困惑.出于好奇,有人知道"脚本"部分是什么吗?我正在使用谷歌浏览器(稳定版)查看该页面.
小智 6
"如果在Web浏览器中加载页面,它看起来与显示的数据完全不同.我正在使用此信息更新问题."
当我使用Chrome获取该示例网址时,我会得到您使用Python代码获得的原始数据.
您的浏览器会自动神奇地检测XML并将其格式化为HTML.它与Python的"完全相同",即原始数据.浏览器让您对您应该期待的内容感到困惑.
注意:不要相信您所看到或通过开发人员工具信息报告的内容,它会向您显示HTML,在这种情况下,HTML是输出的生成包装器,Chrome正在神奇地生成以启用XML代码折叠的交互式显示(JavaScript)以及所有其他bling,而不是服务器实际发送给您的内容,这是您在使用View Source时应该看到的内容.
| 归档时间: |
|
| 查看次数: |
188 次 |
| 最近记录: |