【发布时间】:2021-12-15 19:55:20
【问题描述】:
我正在创建一个将数据发送到远程服务器的函数。我目前正在使用 pandas 库来读取 CSV 文件并将数据转换为数据框。我需要做的是遍历该数据框并将每一行转换为 JSON 并将它们发送到我的数据库。
我需要循环的原因是对于 HTML 字符串来说太大的数据集(当前发送 100 行 x 21 列)太长了。我需要做的是发送循环并发送大量 10 个左右。
下面是我现在的位置:
def UploadData(root, self, data):
i = 0
data_arr = []
for row in data:
if i % 5 == 0:
# Add row to array or something
data_arr.append(row)
json_str = data_arr.to_json(orient='records')
url = 'https://newsimland.com/~db/JSON/?tok={"tok":"YOUR TOKEN HERE","cmd":{"STORE":"test_database","VALUE":'+ json_str +'}}'
r = requests.get(url)
else:
# Add row to array
data_arr.append(row)
i += 1
data = r.json()
if r.status_code == 200:
Alert(title="Error", text="Data upload unsuccessful")
else:
Alert(title="Success", text="Data upload successful")
其中一个问题是.to_json(orient='records') 用于数据帧,而不是我要附加到的数组。此外,如果原始数据帧少于 5 行,则不会将数据发送到数据库。
有谁知道我如何做到这一点?
【问题讨论】:
标签: python json pandas dataframe