【问题标题】:Ftp send only files that are new with pythonFtp 仅发送使用 python 的新文件
【发布时间】:2012-12-30 04:05:14
【问题描述】:

我正在使用此代码将所有 htm 文件上传到网络服务器,但每次运行它时,我都会上传所有文件,我只想上传新文件。

try:
ftp.cwd('public_html')
F=open('Simple.png','rb')
tp.storbinary('STOR Simple.png',F,1024)
file.close(F)
for root, dirs, files in os.walk('C:\Relatorio'):
    for fname in files :
    if (fname.endswith(".HTM")) or (fname.endswith(".htm")):
        ftp.storbinary('STOR ' + fname, open(fname, 'rb'))
            print "FTP Enviado"
            except ftplib.all_errors,e:
            print 'Erro ao conectar ao servidor FTP\nErro:',e

【问题讨论】:

  • 你有没有想过使用像svn或git这样的版本控制系统?这将是一种更优雅的方式。

标签: python-2.7 ftplib


【解决方案1】:

您可以使用本地和远程文件的“最后修改”时间作为粗略的方法来估计文件自上次上传后是否发生更改。

【讨论】:

  • Ruby 中有一个程序可以为不支持 rsync 或其他同步机制的 web 主机执行类似的功能:github.com/aizatto/git-deploy - 这与上次修改的想法相同,但非常依赖本地版本控制以高效完成工作。
猜你喜欢
  • 1970-01-01
  • 2016-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多