【发布时间】:2019-02-03 04:29:54
【问题描述】:
Goodreads 声称我可以获得以名为 <GoodreadsResponse> 的根开头的 XML,其第一个孩子是 <book>,其第八个孩子是 image_url。麻烦的是,我无法让它识别正确的根(它打印 root 而不是 GoodreadsResponse 并且无法识别根有任何孩子,尽管响应代码是 200。我更喜欢使用JSON,据称,您可以将其转换为 JSON,但我的运气为零。
这是我目前拥有的功能。我哪里错了?
def main(url, payload):
"""Retrieves image from Goodreads API endpoint returning XML response"""
res = requests.get(url, payload)
status = res.status_code
print(status)
parser = etree.XMLParser(recover=True)
tree = etree.fromstring(res.content, parser=parser)
root = etree.Element("root")
print(root.text)
if __name__ == '__main__':
main("https://www.goodreads.com/book/isbn/", '{"isbns": "0441172717", "key": "my_key"}')
goodreads 信息在这里:
**Get the reviews for a book given an ISBN**
Get an xml or json response that contains embed code for the iframe reviews widget that shows excerpts (first 300 characters) of the most popular reviews of a book for a given ISBN. The reviews are from all known editions of the book.
URL: https://www.goodreads.com/book/isbn/ISBN?format=FORMAT (sample url)
HTTP method: GET
【问题讨论】:
标签: python xml api python-requests lxml