【发布时间】:2018-10-04 13:34:32
【问题描述】:
我正在尝试将来自 NHTSA 的开源 API 拉取转换为最终进入数据框并转换为 csv。我收到错误 TypeError: data argument can't be an iterator.
这是代码...不需要密码。
import requests, json;
import pandas as pd;
import io;
url = 'https://vpic.nhtsa.dot.gov/api/vehicles/DecodeVINValuesBatch/';
post_fields = {'format': 'csv', 'data':'1HD1JBB433Y031504;1HD1FB4138Y670512;JH2RC44553M701813;JYAVN01EX9A001399'};
r = requests.get(url, data=post_fields);
df = pd.DataFrame(io.StringIO(r.text))
感谢任何可以提供帮助的人。
【问题讨论】:
-
如果 API 返回 json,请尝试
df = pd.DataFrame(json.loads(r.text))。另外,请执行if r.status_code == 200检查以检查 API 是否返回了有效的内容。 -
我检查了你的例子,API返回一个status_code 405,所以你的API请求不正确。
标签: python-3.x pandas python-requests