我需要做一个python脚本来
- 读取包含列 (
person_id
,name
,flag
) 的 csv 文件。该文件有 3000 行。 - 基于
person_id
来自 csv 文件,我需要调用一个 URL 传递person_id
来做一个 GET http://api.myendpoint.intranet/get-data/1234 该 URL 将返回一些信息person_id
,如下例所示。我需要获取所有租金对象并保存在我的 csv 中。我的输出需要是这样的
import pandas as pd
import requests
ids = pd.read_csv(f"{path}/data.csv", delimiter=';')
person_rents = df = pd.DataFrame([], columns=list('person_id','carId','price','rentStatus'))
for id in ids:
response = request.get(f'endpoint/{id["person_id"]}')
json = response.json()
person_rents.append( [person_id, rent['carId'], rent['price'], rent['rentStatus'] ] )
pd.read_csv(f"{path}/data.csv", delimiter=';' )
person_id;name;flag;cardId;price;rentStatus
1000;Joseph;1;6638;1000;active
1000;Joseph;1;5566;2000;active
响应示例
{
"active": false,
"ctodx": false,
"rents": [{
"carId": 6638,
"price": 1000,
"rentStatus": "active"
}, {
"carId": 5566,
"price": 2000,
"rentStatus": "active"
}
],
"responseCode": "OK",
"status": [{
"request": 345,
"requestStatus": "F"
}, {
"requestId": 678,
"requestStatus": "P"
}
],
"transaction": false
}
- 从 csv 的响应中保存附加数据后,我需要使用 URL 上的 carId 从另一个端点获取数据。里程结果必须保存在同一个csv中。 http://api.myendpoint.intranet/get-mileage/6638 http://api.myendpoint.intranet/get-mileage/5566
每次调用的返回将是这样的
{"mileage":1000.0000}
{"mileage":550.0000}
最终输出必须是
person_id;name;flag;cardId;price;rentStatus;mileage
1000;Joseph;1;6638;1000;active;1000.0000
1000;Joseph;1;5566;2000;active;550.0000
有人可以帮我写这个脚本吗?可以与 pandas 或任何 python 3 库一起使用。