我正在尝试将消费者金融保护局 (CFPB) 加载到 Python 3.4 中的 Pandas 数据帧中。我的代码有效,但是通过 SODA API 似乎我仅限于 1,000 行。我正在使用应用程序令牌并在此处引用 URL
df = pd.read_json('http://data.consumerfinance.gov/resource/x94z-ydhh.json?$$app_token=XXXXXXXXXXXXXXXX')
Run Code Online (Sandbox Code Playgroud)
数据结构是完美的,但是我仅限于 1,000 行数据(应该接近 300,000 行数据)。
当我通过浏览器(使用应用程序令牌)访问相同的 URL 时,它似乎也只提取了 1,000 行。我的印象是使用 App Token 就可以访问整个数据集,这是错误的吗?
$limit 参数控制返回的总行数,默认为每个请求 1,000 条记录。
注意: $limit 的最大值为 50,000 条记录,如果超过该限制,您将收到 400 Bad Request 响应。
所以你只是得到了默认的记录数。
您将无法在单个API 调用中获得所有 300,000 条记录- 这将需要多次调用$limit与$offset
尝试:
http://data.consumerfinance.gov/resource/x94z-ydhh.json?$limit=50000&$$app_token=XXXXXXXXXXXXXXXX
Run Code Online (Sandbox Code Playgroud)