我正在尝试将来自美国国家公路交通安全局的开源API拉取最终转换为数据帧并转换为csv。我收到错误TypeError: data argument can't be an iterator.
这是必需的code...no密码。
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))
感谢任何能帮上忙的人。
发布于 2018-10-04 21:56:51
回答你最初的问题:
对于csv,它是这样工作的
import requests
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.post(url, data=post_fields)
pd.read_csv(io.StringIO(r.text), sep=',')
发布于 2018-10-04 21:54:25
所以我想通了!谢谢你@576i。
import requests, json;
import pandas as pd;
import io;
url = 'https://vpic.nhtsa.dot.gov/api/vehicles/DecodeVINValuesBatch/';
post_fields = {'format': 'json', 'data':'1HD1JBB433Y031504;1HD1FB4138Y670512;JH2RC44553M701813;JYAVN01EX9A001399'};
r = requests.post(url, data=post_fields);
x = r.json()
df = pd.DataFrame(x['Results'])
https://stackoverflow.com/questions/52648106
复制相似问题