使用django发送http请求并获取结果

问题描述 投票:5回答:1

这似乎是一个非常简单和愚蠢的问题,但我找不到方便的答案。 我正在尝试使用谷歌的反向geocodding api与django,因为网站解释(在https://developers.google.com/maps/documentation/geocoding/start?csw=1#ReverseGeocoding)我应该向网址发送请求: https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=<_api_key> 但我找不到使用django向google api发送此请求的合适方式。 对我来说,内置django的方法看起来很简单,但我能找到的只是要安装的模块。 如果没有办法安装其他python模块哪一个最好?

python django google-maps http reverse-geocoding
1个回答
8
投票

那么,最直接的方法是安装requests库并简单地调用:

result = requests.get(your_link)

您可以在库的docs中找到其他信息(例如,如何进行身份验证,使用cookie等,以及如何访问响应中的数据)。 requests库编写得非常好,非常直观且易于使用。相当多的聪明人和公司也使用它,所以它不是一个半生不熟的图书馆,有人刚刚在周末被砍掉(截至目前,它有5612个提交和529个贡献者在GitHub)。

如果你绝对必须避免使用外部库,为什么不试试urllib.request。它有点复杂,如果您更喜欢更高级别的界面,甚至文档本身也建议使用requests。但你绝对可以完成它的工作。首先,您可以阅读docs,了解如何使用它来获取数据。阅读这篇thread,了解如何从urllib获得的响应中提取json。

© www.soinside.com 2019 - 2024. All rights reserved.