python定时复制远程文件代码实现

  • 更新时间:2020-06-22 08:25:40
  • 编辑:袁阳飇

本文实例为大家分享了python定时复制远程文件夹中文件的具体代码,供大家参考,具体内容如下

import os, shutil, sys
import threading
import configparser
import datetime
 
 
#复制文件
def remote_copy(src_path, dst_path):
 
 
start_time = datetime.datetime.now()
print(start_time, " 开始复制……")
bCopy = False;
try:
# 获取源文件夹中的所有文件及文件夹
files = os.listdir(src_path)
for file in files:
#生成绝对路径
src_file = os.path.join(src_path,file)
# 判断是否为文件
if os.path.isfile(src_file) and (os.path.getsize(src_file) < file_size) :
 
dst_file = os.path.join(dst_path,file)
if not os.path.exists(dst_file):
bCopy = True
shutil.copyfile(src_file, dst_file)
'''
copy_cmd = 'xcopy /D %s %s'%(src_file,dst_file)
os.popen(copy_cmd)
'''
print(src_file, ' => ', dst_file, 'copy done!')
#else:
# print(dst_file, "已存在!")
 
 
except Exception as e:
print("无法发现文件,请检查网络连接!")
os.system('pause')
sys.exit()
 
 
else:
if not bCopy:
print("未发现新文件……")
end_time = datetime.datetime.now()
'''
time = span - (end_time - start_time).seconds
print(end_time, " 本次执行完毕,等待", time, "秒……")'''
 
 
print(end_time, " 本次执行完毕,等待", span, "秒……")
 

#定时复制
def timer_copy(src_path, dst_path):
remote_copy(src_path, dst_path)
 
 
global timer
timer = threading.Timer(span, timer_copy, [src_path, dst_path])
timer.start()
 

 
# 程序入口
if __name__ == "__main__":
 
 
#读取配置文件
config = configparser.ConfigParser()
config.read("config.ini") 
src_path = config.get('path', 'srcPath')
dst_path = config.get('path', 'dstPath')
global span
span = config.getint('run', 'timeSpan')
global file_size
file_size = config.getint('run', 'fileSize')
 
 
# 目的路径不存在则建立路径
if not os.path.exists(dst_path):
os.makedirs(dst_path)
 
 
print("配置文件为 :config.ini")
print("执行间隔为 :", span)
print("文件限制为 :", file_size)
print("输入文件夹为:", src_path)
print("输出文件夹为:", dst_path)
 
 
inp = input("是否继续(y/n):")
if inp == 'y' or inp == 'Y':
 
timer = threading.Timer(1, timer_copy, [src_path, dst_path])
timer.start()
 
 
#测试
#remote_copy(src_path, dst_path)
else:
sys.exit()

配置文件config.ini

[run]
timeSpan=20000
fileSize=5000
[path]
srcPath=\\192.168.0.108\xxxx\
dstPath=f:\downloads\

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。

相关教程

  • 如何解决Python中open()函数打开文件路径报错问题

    这篇文章主要介绍了Python学习笔记之open()函数打开文件路径报错问题,现在分享给大家,也给大家做个参考。一起过来看看吧

    发布时间:2020-01-20

  • 用python打开文件的详细方法

    python下打开文件超级简单,不用导入任何包,直接输入f = open('your_file.txt','r')即可。

    发布时间:2019-10-29

  • Python读取mat文件保存为pickle格式的实例代码

    今天小编就为大家分享一篇Python读取mat文件,并保存为pickle格式的方法以及Python使用pickle模块储存对象操作示例,具有很好的参考价值,希望对大家有所帮助。

    发布时间:2018-10-23

  • python引用另一个文件的函数的方法

    在python中是可以引用另一个文件的函数的,相同文件夹下可以直接使用import引入另一个文件,不在同一文件夹内可以使用sys模块的sys.path.append()方法将类文件引入。

    发布时间:2020-02-26

  • Python中glob模块查找文件路径的实例方法

    glob模块遵循Unix的shell规则来匹配文件名进行文件查找,下面我们结合匹配相关的字符区间与通配符知识,来简单掌握Python中glob模块查找文件路径的用法

    发布时间:2019-11-23

  • python如何创建文件

    python建立文件的方法:首先在电脑桌面上,新建一个名为a的文件夹;然后打开python的编译器;再用python在文件夹a里面建立一个b.txt文档,代码是file.write('你好,\n 世界。')。

    发布时间:2020-02-27

  • Python实现跨文件全局变量的方法

    我们在使用Python编写应用的时候,有时候会遇到多个文件之间传递同一个全局变量的情况。所以下面这篇文章主要给大家介绍了关于Python跨文件全局变量的实现方法,需要的朋友可以参考借鉴,

    发布时间:2020-03-07

  • 详解python实现写数字文件名的递增保存文件方案

    今天小编就为大家分享一篇python实现写数字文件名的递增保存文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    发布时间:2020-02-29

  • 关于python异常和文件处理机制实例详解

    这篇文章主要介绍了python异常和文件处理机制,详细分析了Python异常处理的常用语句、使用方法及相关注意事项,需要的朋友可以参考下

    发布时间:2020-01-23

  • 《Python编程:从入门到实践》第十章:文件和异常

    10-2 C语言学习笔记 可使用replace()将字符串中的特定单词都替换为另一个单词。下面是一个简单的示例,演示了如何将句子中的dog替换为cat: message = I really like dogs. message.replace(dog,cat) I really like cats. route = learning.txtwith open(route) as file_object:message = file_object.read()print(message.rstrip())

    发布时间:2018-12-01

  • Python数据科学:技术详解与商业实践

    Python数据科学:技术详解与商业实践

    本书共19章,第1章介绍数据科学中涉及的基本领域;第2~3章介绍与数据工作紧密相关的Python语言基础;第4章讲解描述性统计分析在宏观业务领域的分析;

    大小:154 MBPython电子书

  • Python数据科学指南

    Python数据科学指南

    本书是Python数据分析编程入门,详细介绍了Python在数据科学中的应用,60多个实用的开发技巧,帮你探索Python及其强大的数据科学能力

    大小:62.3 MBPython数据分析电子书

  • Python地理空间分析指南

    Python地理空间分析指南

    Python作为一种高级程序设计语言,凭借其简洁、易读及可扩展性日渐成为程序设计领域备受推崇的语言之一。 本书以地理空间分析为背景,介绍了Python在地理信息处理方面的应用技巧。全书共

    大小:12.4 MBPython电子书

  • Python与机器学习实战

    Python与机器学习实战

    本书用到Numpy这个基础的科学计算库来进行算法代码的实现,能够从实现的过程中更好地理解机器学习算法的细节,以及了解Numpy的各种应用,适用于想了解传统机器学习算法的学生和从业者等

    大小:182 MBPython算法电子书

  • Python机器学习

    Python机器学习

    Python机器学习中文版(Sebastian Raschka著),一共13章,含机器学习算法、模型评估、集成学习、web应用、神经网络等,想要学习机器语言的可以下载学习

    大小:42.1MBPython电子书

  • Python3.8.1标准库参考中文手册

    Python3.8.1标准库参考中文手册

    reference-index 描述了 Python 语言的具体语法和语义,这份库参考则介绍了与 Python 一同发行的标准库。它还描述了通常包含在 Python 发行版中的一些可选组件。 Python 标准库非常庞大,所提供的组件涉及范围十分广泛,正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模块,提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计,通

    大小:19.3 MBPython

用户留言