通过添加App Token

时间:2015-10-27 14:03:43

标签: python api socrata soda

对于学校项目,我需要处理api给我的信息。 我选择了RDW API(荷兰牌照信息)。我现在拥有的只是访问1000个牌照,但我希望能够全部取消它们。

import urllib.request
import json

url = "https://opendata.rdw.nl/resource/m9d7-ebf2.json?"

json_data_request = urllib.request.urlopen(url)
json_data = json.loads(json_data_request.readall().decode("utf-8"))

print(len(json_data))

使用此代码,我只能访问1000个licenceplates 我想要工作的是( kenteken = licenceplate ):

def locu_search(kenteken):
    api_key = "CYcaHHuuvFfG2apjnvns8Ob41"
    url = "https://opendata.rdw.nl/resource/m9d7-ebf2.json?$$app_token=" + api_key
    after_url = "kenteken=" + kenteken
    final_url = url + after_url
    json_data_request = urllib.request.urlopen(final_url)
    json_data = json.loads(json_data_request.readall().decode("utf-8"))
    #print all info with that licenceplate
kenteken = input("Licenceplate:")
locu_search(kenteken)

此代码应该做的是:

  1. 要求获得licenceplate。
  2. 使用您输入的值转到该函数。
  3. 打印该licenceplate的所有信息。(此处还没有,因为我不能让以前的行不能工作)
  4. 我搜索了但是无法使用这个可以使用的任何信息吗?

1 个答案:

答案 0 :(得分:1)

您需要在代码中更改一些内容:

  • 您需要在&url之间添加&符号(after_url)以分隔这两个参数:final_url = url + "&" + after_url
  • 如果您要为每个请求检索超过1000条记录,则需要使用$limit$offset分页参数:https://dev.socrata.com/docs/paging.html