如何使用“q”调用API并在Django视图中获得响应?

2024-05-23 18:38:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图查询这个api并得到一个响应,但我显然做得不正确,因为我知道它没有这么简单

from django.shortcuts import render


def home(request):
    response = request.GET["https://api-adresse.data.gouv.fr/search/?q=8+bd+du+port"}
    return render(request, "home.html", {'response': response})

我希望能够提供API的地址,即:“80000亚眠港8大道”和 获取有关它的相关信息。ie:gps坐标

这是api:https://adresse.data.gouv.fr/api

我似乎找不到关于如何使用django中的视图发出此类请求和处理响应的信息


Tags: djangofromhttpsimportapi信息homedata
1条回答
网友
1楼 · 发布于 2024-05-23 18:38:05

request.GET是一个类似字典的对象,包含所有给定的HTTP GET参数,也称为查询参数或查询字符串。
requests是一个简单的Python HTTP库,允许您发送HTTP/1.1请求

from urllib.parse import quote_plus

import requests
from django.shortcuts import render


def home(request):
    url = "https://api-adresse.data.gouv.fr/search/?q={}"
    address = "8 Boulevard du Port 80000 Amiens"
    response = requests.get(url.format(quote_plus(address)))
    # response.json()  # this will give you JSON response
    return render(request, "home.html", {"response": response})

相关问题 更多 >