python - 如何解码从 BytesIO 读取的 FTP 文件
问题描述
我正在尝试读取 FTP 服务器上的文本文件的内容,我的代码可以建立连接并列出目录中存在的所有文件。但是,这里失败了:
from io import BytesIO
import os
r = BytesIO()
ftp.retrbinary("RETR " + "textfile.txt", r)
print (r)
这打印:
<_io.BytesIO object at 0x03C2CCF0>
首先,我不完全确定这意味着什么,所以如果有人能对此有所了解,我将不胜感激。
此外,当我尝试使用以下代码解码返回值时,我收到此错误:
TypeError: '_io.BytesIO' object is not callable
代码如下所示:
r = BytesIO()
ftp.retrbinary("RETR " + "textfile.txt", r)
print (r.decode("utf-8"))
解决方案
尝试r.write
并r.getvalue()
from io import BytesIO
from ftplib import FTP
import os
ftp = FTP('ftp.test.org')
ftp.login()
r = BytesIO()
ftp.retrbinary("RETR " + "textfile.txt", r.write)
print (r.getvalue())
推荐阅读
- .net-core - 无法创建新服务:ChromeDriverService
- c# - 防止 Concurent 软件处理重叠数据
- python - 使用 U-Net 作为单层进行语义分割的输入标签
- xpath - Scrapy - 列表返回无 - 索引超出范围
- google-apps-script - Google Script - 将工作表的某些行通过电子邮件发送到电子邮件正文中
- struct - 在 Julia 中重新分配 Union{Nothing, Float64} 类型的可变结构字段
- javascript - Node.js TCP Socket 不会从模块写入连接
- python - 使用 Scrapy 的 Steam Scraper 表单问题(如果没有表单,如何发送数据)
- .net - 使用Orleans,如何实现分布式数据存储的分布式计算?
- android - 匕首 2 视图模型和 ViewModelProvider.Factory