【发布时间】:2018-07-02 05:53:53
【问题描述】:
我正在尝试使用 Google 的地理定位 API,提供 wifi 数据以确定位置。这是他们的intro。这是我的代码
@author: Keith
"""
import requests
payload = {
"considerIp": "false",
"wifiAccessPoints": [
{
"macAddress": "00:25:9c:cf:1c:ac",
"signalStrength": -43,
"signalToNoiseRatio": 0
},
{
"macAddress": "00:25:9c:cf:1c:ad",
"signalStrength": -55,
"signalToNoiseRatio": 0
}
],
'key':'<MyAPIKey>'
}
r = requests.post('https://www.googleapis.com/geolocation/v1/geolocate',
params=payload)
print(r.text)
这是输出
{
"location": {
"lat": 32.3643098,
"lng": -88.703656
},
"accuracy": 6061.0
}
该请求忽略了除关键部分之外的所有有效负载,只是使用我的 IP 地址找到了地理位置。所以我错误地发送了 json 有效负载。我知道这可能真的很简单,但我被困住了,找不到与请求一起使用 python 来执行此类 API 查询的示例。谢谢
编辑: 拿起 cURL 库并成功执行此命令:
curl -d @your_filename.json -H "Content-Type: application/json" -i "https://www.googleapis.com/geolocation/v1/geolocate?key=<myapikey>"
得到了我期望的输出。我只是希望能够在请求中做同样的事情,但我试图发送的数据在“your_filename.json”中。
【问题讨论】:
标签: python json google-maps python-requests