所以我试图读取一个Excel文件并将其传递给curl命令。所以在我的curl命令中,我需要4件事。我需要名称,路径,Tname和格式。

因此,对我来说,运行此脚本只需要解析excel文件。它应该通过按列解析来获取数据。因此,在该列中,我具有诸如名称,路径和格式的标题。我正在尝试使其读取列并从那里获取数据,并将其发送到curl命令中。一旦通过,则应转到下一行并执行相同的操作,直到到达终点为止。

因此,我的curl命令知道需要解决的问题。我现在不关心curl命令。我更关心如何获取数据并将其发送到curl命令中。

我已经通过使用熊猫获得了excel表格。一旦这样做,我便将每一列附加到一个数组中。然后在我的curl命令中,我试图传递它。

我在网址和用户中使用*,并且出于隐私原因通过。就像我说的,我不关心curl命令。我正在尝试修复有关获取数据并将其发送到curl命令的代码。

import requests
import json
import pprint
import urllib
import sys
import pandas as pd

path='data.xlsx'
excel=pd.read_excel(path)
name = []
path = []
Tname = []
formatG = []
for cell in excel:
    name.append(cell[:0]),
    path.append(cell[:1]),
    Tname.append(cell[:2]),
    formatG.append(cell[:3])

url='*'
data={
           'name':'{}'.format(name),
           'path':'{}'.format(path),
           'TName':'{}'.format(Tname),
           'formatG':'{}'.format(formatG)
     }

djson=json.dumps(data)
headers={'content-type':'application/json','Authorization':'token' {}.format(fk)}
response=requests.post(url,data=data_json,headers=headers)
pprint.pprint(response.json())

最佳答案

如果您的csv文件包含逗号分隔的数据,例如以下内容:

name,path,Tname,formatG
tom,vv,teto,mp4
mane,bb,memo,png


那么您可以使用如下代码:

data = []
with open('myfile.txt') as f:
    for line in f:
        data.append(line.strip().split(','))

data = data[1:]  # get the data without the first row which is data headers
print(data)

for entry in data:
    name, path, Tname, formatG = entry
    # do your curl stuff


数据如下:

[['tom', 'vv', 'teto', 'mp4'], ['mane', 'bb', 'memo', 'png']]

关于python - 如何逐行读取Excel文件并在curl命令中传递它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56105701/

10-12 17:49