我对Powershell不太熟悉,我想从目录中的多个csv文件导入csv数据。 这些文件具有相同的结构,但我需要使用分隔符过滤输出,因为遗憾的是所有数据都在一列中压缩。 我设法导入一个单独的csv文件: 并成功在单独的列中获得有效的输出。 我怎么能一个接一个地传递多个文件? ...
提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供 中文繁体 英文版本 中英对照 版本,有任何建议请联系yoyou2525@163.com。
URLs = ['https://cornershopapp.com/api/v2/stores?locality=+01020&country=MX',
'https://cornershopapp.com/api/v2/stores?locality=+01110&country=MX',
'https://cornershopapp.com/api/v2/stores?locality=+01210&country=MX']
我有这个端点列表(上面只是一个例子——真正的列表要大得多)。 我想将这些JSON文件和 append 的数据获取到一个CSV 。
这是python3的一个例子
import csv, json, sys
import urllib.request
outputFile = open("test.csv", 'w') #load csv file
with urllib.request.urlopen("https://cornershopapp.com/api/v2/stores?locality=+01020&country=MX") as url:
data = json.loads(url.read().decode())
#print (data)
output = csv.writer(outputFile) #create a csv.write
output.writerow(data[0].keys()) # header row
for row in data:
output.writerow(row.values()) #values row
这些示例链接的数据结构是分层的,因此将其展平为 CSV 结构并非易事。 有很多方法可以做到这一点,但我认为这不是你可以在 stackoverflow 上快速回答的问题。 也许其他人知道我不知道的库,但我建议阅读“ 如何在非递归优雅 Python 中展平深度嵌套的 JSON 对象”。
此代码段使用requests
库,它实际上是 Python 库,用于处理与 HTTP 相关的任何内容。
此脚本会将当前工作目录中的 output.csv 的 URL 中的URLs
的output.csv
转储。
EDIT: as others have pointed out, if you'd like to unnest the JSON of these endpoints you'll need to do a bit more work and I'd recommend checking out pandas and the json_normalize function OR study up on recursion and implement your自己取消嵌套 function
import json
import csv
import requests
URLs = ['https://cornershopapp.com/api/v2/stores?locality=+01020&country=MX',
'https://cornershopapp.com/api/v2/stores?locality=+01110&country=MX',
'https://cornershopapp.com/api/v2/stores?locality=+01210&country=MX']
with open('output.csv', 'w') as url_file:
# create CSV writer object
url_writer = csv.writer(url_file, delimiter=',')
for u in URLs:
response = requests.get(u).text
json_response = json.loads(response)
url_writer.writerow(json_response)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.