ftp 个使用 python3 和 ftplib 的视频

ftp videos using python3 with ftplib

您好,我正在尝试使用带有 python 的 ftplib 将视频上传到我的网络服务器,但它无法正常工作,它出现了编码错误

这是我的代码

from ftplib import FTP

ftp = FTP('ftp.example.com')
ftp.login(user='ftp@example.com', passwd='password')
ftp.storbinary("STOR video.mp4", open("video.mp4", 'r'))

结果如下:

Traceback (most recent call last):
  File "/home/pi/Desktop/filerepeater.py", line 50, in <module>
    ftp.storbinary("STOR video.mp4", open("video.mp4", 'r'))
  File "/usr/lib/python3.2/ftplib.py", line 471, in storbinary
    buf = fp.read(blocksize)
  File "/usr/lib/python3.2/codecs.py", line 300, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x9b in position 30: invalid start byte

使用代码 ftp.storbinary("STOR video.mp4", open("video.mp4", 'rb')) 修复

我猜你需要用 'rb':

模式打开视频文件
ftp.storbinary("STOR video.mp4", open("video.mp4", 'rb'))