正在将 API 输出响应导出到 CSV - Python
Exporting API output response to CSV - Python
我不是 Python 方面的专家,但我用它来调用来自 API 的数据。我得到一个代码 200 并打印了部分数据,但我无法导出/保存/写入输出(到 CSV)。有人可以帮忙吗?
这是我的代码:
import requests
headers = {
'Accept': 'text/csv',
'Authorization': 'Bearer ...'
}
response = requests.get('https://feeds.preqin.com/api/investor/pe', headers=headers)
print response
output = response.content
数据(应该是 CSV,对吗?)如下所示:
enter image description here
我设法将其保存为 txt,但输出无法使用/不可导入(例如 Excel)。我使用了以下代码:
text_file = open("output.txt", "w")
n = text_file.write(output)
text_file.close()
谢谢你和最好的问候,
一个
您的内容使用竖线 |
作为分隔符。 CSV 使用 ,
逗号(这就是它们被称为逗号分隔值的原因)。
您只需将数据的管道替换为逗号即可。但是,如果您拥有的数据本身使用逗号,这可能会有问题。
output = response.content.replace("|", ",")
正如评论所建议的那样,您也可以使用 pandas:
import pandas as pd
from StringIO import StringIO
# Get your output normally...
output = response.content
df = pd.read_csv(StringIO(output), sep="|")
# Saving to .CSV
df.to_csv(r"C:\output.csv")
# Saving to .XLSX
df.to_excel(r"C:\output.xlsx")
我不是 Python 方面的专家,但我用它来调用来自 API 的数据。我得到一个代码 200 并打印了部分数据,但我无法导出/保存/写入输出(到 CSV)。有人可以帮忙吗?
这是我的代码:
import requests
headers = {
'Accept': 'text/csv',
'Authorization': 'Bearer ...'
}
response = requests.get('https://feeds.preqin.com/api/investor/pe', headers=headers)
print response
output = response.content
数据(应该是 CSV,对吗?)如下所示: enter image description here
我设法将其保存为 txt,但输出无法使用/不可导入(例如 Excel)。我使用了以下代码:
text_file = open("output.txt", "w")
n = text_file.write(output)
text_file.close()
谢谢你和最好的问候,
一个
您的内容使用竖线 |
作为分隔符。 CSV 使用 ,
逗号(这就是它们被称为逗号分隔值的原因)。
您只需将数据的管道替换为逗号即可。但是,如果您拥有的数据本身使用逗号,这可能会有问题。
output = response.content.replace("|", ",")
正如评论所建议的那样,您也可以使用 pandas:
import pandas as pd
from StringIO import StringIO
# Get your output normally...
output = response.content
df = pd.read_csv(StringIO(output), sep="|")
# Saving to .CSV
df.to_csv(r"C:\output.csv")
# Saving to .XLSX
df.to_excel(r"C:\output.xlsx")