利用Python 向FTP 上传图片,程序假死?

想要从网络中下载图片到本地之后从本地上传图片到FTP上的指定文件夹,但是程序总是在运行一段时间后卡住,最后经过调试输出确定问题是出在 ftp.storbinary() 这行代码,百度了很久,但是不知道为什么会卡住,也不知道怎么解决,有没有大佬知道为什么会卡住,还有怎么解决么??
下面附上代码:

# 下载图片到本地, 传入图片链接 和 下载后保存的文件名
def download_img(imgurl, filename):
    if imgurl:
        print("-----------正在下载图片 %s" % imgurl)
        try:
            response = requests.get(imgurl, timeout=5)
            img = response.content
            with open(f'{path}/result/imgtmp/{filename}.jpg', 'wb+') as f:
                f.write(img)
            print('下载图片到本地成功')
            return f'{path}/result/imgtmp/{filename}.jpg'
        except Exception as ex:
            print(ex)
            return ''
            

# 从本地上传文件到ftp
def uploadfile(ftp, remotepath, localpath):
    print(1)
    bufsize = 1024  # 缓冲区大小
    print(2)
    fp = open(localpath, 'rb')
    print(3)
    ftp.storbinary('STOR ' + remotepath, fp, bufsize)
    print(4)
    ftp.set_debuglevel(0)
    print(5)
    fp.close()


# 下面是输出结果和 我加的编辑这个问题的时间

#--------2020-07-13 13:41:37-------------
#-----------正在下载图片 https://****.***/***/***.jpg
#下载图片到本地成功
#开始上传图片到 FTP
# 1
# 2
# 3

# 这是现在的时间,程序还在卡着:
#--------2020-07-13 14:27:37-------------

已经检查了图片链接没有问题,程序运行时每次卡住的地方也不一样,有时候上传一二十个图片会卡在这个地方,有时候上传四五百个图片才会卡住,完全不知道问题出在哪里(囧)

阅读 2.3k
1 个回答
新手上路,请多包涵

不知道你有没有解决这个问题,我现在也遇到了这样的问题,卡住了,不报错也不继续运行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题