Python从在线Web服务

时间:2016-02-03 14:15:20

标签: python xml

我一直在尝试使用python来解析我从网络服务器获取的XML。 XML的链接是http://gagnaveita.vegagerdin.is/api/faerd2014_1。我使用哪个库并不重要我总是得到非常奇怪的结果,它没有解析和文件。此外,每当我尝试保存文件时,它都不会像XML一样显示。知道如何解析像这样的flie?

1 个答案:

答案 0 :(得分:0)

当我在浏览器中运行此链接时,它会向我显示XML数据。

但是当我尝试在脚本中读取它时,我得到了JSON文件。

当我使用wget命令(在Linux上)时,我得到了JSON文件。

也许你有相同的情况。

-

或者浏览器可能获取JSON数据,但它使用自己的方法来显示它并在屏幕上显示XML:)

编辑:我找到了答案 - 服务器检查accept标头。如果有xml则它会发送XML文件。

尝试使用和不使用headers

import requests

headers = {
   'Accept': 'application/xml',
}

r = requests.get('http://gagnaveita.vegagerdin.is/api/faerd2014_1', headers=headers)

print(r.content)
#print(r.json())