将URL中的XML解析为python对象

发布于 2021-01-29 15:07:13

Goodreads网站具有用于访问用户“货架”的API:https
:
//www.goodreads.com/review/list/20990068.xml?
key=nGvCqaQ6tn9w4HNpW8kquw
&v=2&shelf=toread

它返回XML。我正在尝试创建一个django项目,该项目通过此API在书架上显示书籍。我正在寻找一种方法(或者是否有比该方法更好的方法)来编写我的视图,以便可以将一个对象传递给模板。目前,这是我正在做的:

import urllib2

def homepage(request):
    file = urllib2.urlopen('https://www.goodreads.com/review/list/20990068.xml?key=nGvCqaQ6tn9w4HNpW8kquw&v=2&shelf=toread')
    data = file.read()
    file.close()
    dom = parseString(data)

如果执行正确,我不完全确定如何操作该对象。我正在关注本教程

关注者
0
被浏览
85
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我会使用数据结构xmltodict制作一个python字典,XML然后将该字典传递给上下文中的模板:

    import urllib2
    import xmltodict
    
    def homepage(request):
        file = urllib2.urlopen('https://www.goodreads.com/review/list/20990068.xml?key=nGvCqaQ6tn9w4HNpW8kquw&v=2&shelf=toread')
        data = file.read()
        file.close()
    
        data = xmltodict.parse(data)
        return render_to_response('my_template.html', {'data': data})
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看