我正在编写一个小脚本,它从ftp服务器下载一个csv文件,下载后,我想在将其写入新文件之前对每行进行一些计算。
我有ftp部分工作,但我不能弄清楚如何使用BytesIO数据作为csv数据。
我使用下面的代码,但打印0行。
任何帮助或推动在正确的方向将非常感谢。
from ftplib import FTP
import io
ftp = FTP(FTP_SERVER)
ftp.login(FTP_USER, FTP_PASSWORD)
csv_data = io.BytesIO()
ftp.retrbinary('RETR ' + FTP_FILE, csv_data.write)
csv_reader = csv.reader(csv_data, delimiter=",")
for row in csv_reader:
print(row)
1条答案
按热度按时间hc8w905p1#
1.下载后,
BytesIO
的读/写指针在末尾。在读取之前,您必须将其返回到开头。1.此外,您需要将下载的字节转换为文本。