python - 对 api 的请求不起作用(Curl 和 python)
问题描述
所以,我尝试制作一个程序来告诉我我的公共汽车的时间表,我将这些实时信息放在 Api 上:
但是当我吃午饭时出现错误:
"error": "Unknown dataset: tr-vianavigo"
我想我有一个可以使用的令牌,但是如何使用?这个 api 的卷曲是:
curl -X GET --header "Accept: application/json" "https://api-lab-trone-
stif.opendata.stif.info/service/tr-vianavigo/departures?
line_id=100100020%3A20&stop_point_id=59%3A4726914"
当我在我的网络浏览器上使用第一个网址时,它可以工作并向我展示:
[
{
"lineDirection": "Juvisy RER",
"code": "duration",
"time": "12"
},
{
"lineDirection": "Savigny Toulouse-Lautrec",
"code": "duration",
"time": "20"
},
{
"lineDirection": "Juvisy RER",
"code": "duration",
"time": "38"
},
{
"lineDirection": "Savigny Toulouse-Lautrec",
"code": "duration",
"time": "45"
}
]
但在 python 中,如果我只是测试:
import requests
#my token
apikey = 'ef169369dfd911b01371b73e975ed88adce881bc92dbbd9720551c94'
#url of the api
url ='https://api-lab-trone-stif.opendata.stif.info/service/tr-vianavigo/departures?line_id=100100385%3A385&stop_point_id=StopPoint%3A59%3A6195786'
#requests
r = requests.get(url, apikey)
print(r.text)
它犯了错误:
"error": "Unknown dataset: tr-vianavigo"
解决方案
为此,您必须使用您的 API 密钥之一。API 密钥是通过您在My API keys中的用户帐户获得的。生成后,密钥必须作为查询参数 ( apikey
) 插入到调用的 URL 中。对于您的示例:
curl -X GET --header "Accept: application/json" "https://api-lab-trone-stif.opendata.stif.info/service/tr-vianavigo/departures?line_id=100100020%3A20&stop_point_id=59%3A4726914&apikey=<YOUR-API-KEY>"
tr-unitaire-stif
仅供参考,数据集上可用的实时数据范围可在此处获得。
推荐阅读
- c - 如何在 Tizen c 程序中正确获取当前日期
- postgresql - 为什么 HangFire 启动过程会因此错误而失败?
- ios - Swift Broadcast Replaykit 停止录制
- javascript - 使用 Switch 语句在 React 中预期的表达式
- python - 2列上的Groupby加上String列上的过滤器
- c++ - 为什么建议包含 googletest 源文件
- hibernate - 如何将 FindAllBy 与 JpaRepository 中的多个字段一起使用?
- java - 带有vpn的browsermob-proxy + selenium不能在mac上运行,但可以在windows上运行
- python - 从 Kaggle 的训练集生成验证集
- arrays - Powershell 批量删除-ADGroupMember