V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
ljq29
V2EX  ›  Python

求 Py 大神帮忙看一眼,这个 Python 程序哪里有错误?

  •  
  •   ljq29 · 2019-05-11 20:14:20 +08:00 · 1906 次点击
    这是一个创建于 2026 天前的主题,其中的信息可能已经有所发展或是发生改变。

    把手头的一个 ftp 程序升级成为 ssl 传输,客户端用的是 ftplib 包编写,服务端是 File Zilla。 现在上传文件能够正常上传上去,但是退出的时候会报错。

    客户端这样报错:

    客户端这样报错

    服务端这样报错:

    服务端这样报错

    第四十行是这样写的:

    ftp.storbinary('STOR ' + os.path.basename(new_file_name),file)

    第 1 条附言  ·  2019-05-11 21:49:48 +08:00
    现在用 try/catch 跳过了这个报错点。

    奇怪的是,尽管报错,文件还是能够正常传到 ftp 服务器并保存成功的,只是跳过报错就不能了解到到底是不是真的把文件上传成功了。
    3 条回复    2019-05-13 16:27:50 +08:00
    CallMeReznov
        1
    CallMeReznov  
       2019-05-11 20:26:00 +08:00
    fp.close
    ftp.quit()
    ljq29
        2
    ljq29  
    OP
       2019-05-11 20:33:53 +08:00
    @CallMeReznov
    附近的代码是这样的:
    '''
    new_file_name = time.strftime("%Y%m%d%H%M%S", time.localtime())+'-'+os.path.basename(file_name)
    file=open(file_name,"rb")
    show_msg(file_name+' is uploading')
    ftp.storbinary('STOR %s'%os.path.basename(new_file_name),file)
    ftp.set_debuglevel(0)
    file.close()
    try:
    ftp.quit()
    except:
    ftp.close()
    '''
    ljq29
        3
    ljq29  
    OP
       2019-05-13 16:27:50 +08:00
    @CallMeReznov
    后面的代码有这些啊,但是报错是在 close 前面报错的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5970 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:57 · PVG 09:57 · LAX 17:57 · JFK 20:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.