🌐
经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用
点我优惠购买
🚀
拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多
点我优惠购买
🛡️
稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少
点我优惠购买
温馨提示:这篇文章已超过530天没有更新,请注意相关的内容是否还可用!
python检测U盘并复制所需的文件,检测计算机中是否插入U盘,如果插入U盘则将对应的数据复制到计算机中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | # -*- coding: utf-8 -*- # [url=home.PHP?mod=space&uid=238618]@Time[/url] : 2021/7/10 # [url=home.php?mod=space&uid=686208]@AuThor[/url] : 陈墨 # @Software: PyCharm # @function: 读取U盘的数据 from time import sleep from shutil import copytree, copyfile, rmtree, move import os import logging logging.basicConfig(level = logging.INFO, format = '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) logger = logging.getLogger(__name__) # 获取U盘的盘符 # disk_partitions() 打印一下他的返回值,就会完全清楚下面这个函数 def get_usb_dispart(): for item in disk_partitions(): if item.opts = = "rw,removable" : # 可读、可移动介质 logger.info( "发现USB:%s" % str (item)) return item.device logger.info( "没有发现USB" ) return None # 读取想要的文件 u盘所有文件或者文件名含有某个字段的文件及文件夹 # 1、文件夹含有该字段:复制文件夹; # 2、文件含有字段,复制文件。 def get_useb_file(src, path = " ", select=None, dst=r" C:\usb"): if select is None : # 无筛选规则,复制所有 copytree(src, dst) logger.info( "复制%s盘USB所有内容到%s" % (src, dst)) else : # 复制部分 paths = os.listdir(os.path.join(src, path)) # 获取当前路径下的所有文件及文件夹 for item in paths: item = os.path.join(path, item) if select in item: if os.path.isdir(os.path.join(src, item)): #如果是文件夹,还有字符直接复制文件夹;否则递归遍历文件夹下的内容 try : copytree(os.path.join(src, item), os.path.join(dst, item)) except Exception as e: try : rmtree(os.path.join(dst, item)) except : continue copytree(os.path.join(src, item), os.path.join(dst, item)) else : try : copyfile(os.path.join(src, item), os.path.join(dst, item)) except Exception as e: os.makedirs(os.path.dirname(os.path.join(dst, item))) try : move(os.path.join(dst, item)) except : continue copyfile(os.path.join(src, item), os.path.join(dst, item)) logger.info( "复制%s 到 %s" % (os.path.join(src, item), (os.path.join(dst, item)))) else : if os.path.isdir(os.path.join(src, item)): get_useb_file(src, item, select, dst) while True : path = get_usb_dispart() if path is not None : get_useb_file(src = path, select = "测试" , dst = r "F:\usb" ) break sleep( 1 ) |
文章版权声明:除非注明,否则均为执刀人的工具库原创文章,转载或复制请以超链接形式并注明出处。
还没有评论,来说两句吧...