首頁 > 軟體

分享4個Python中的非常好用的自動化指令碼

2022-11-07 14:01:11

這裡有一些很棒的自動化指令碼,你可以在你的 Python 專案中使用它們。在做專案的時候,我們需要一些現成的程式碼來幫助我們解決日常生活中的問題。本文為你的 Python 專案提供了4個自動化指令碼,可以解決這些問題。

照片壓縮器

這會將您的照片壓縮成較小的尺寸,而j儘量的保證質量相同。

from PIL import Image
from tkinter.filedialog import *
fl=askopenfilenames()  # 開啟資料夾
img = Image.open(fl[0]) 
img.save("result.jpg", "JPEG", optimize = True, quality = 100)

圖片水印

這個簡單的指令碼將為任何影象新增水印。你可以設定文字、位置和字型。

from PIL import Image
from PIL import ImageDraw, ImageFont


def watermark_img(img_path, res_path, text, pos):
    font = ImageFont.truetype("簡啟體.TTF", 20)
    img = Image.open(img_path)
    wm = ImageDraw.Draw(img)
    wm.text(pos, text, align='center', font=font, fill='red')
    img.show()
    img.save(res_path)


img = '4.png'
watermark_img(img, 'result2.jpg', '川川菜鳥', pos=(5, 5))

如下:

抄襲檢查器

此指令碼檢查兩個檔案之間的抄襲。首先我建立一個word檔案如下:

第二個檔案如下,我只改變的數位:

指令碼如下:

from difflib import SequenceMatcher

f1 = input("輸入檔案一的路徑: ")
f2 = input("輸入檔案二的路徑: ")

def plagiarism_checker(f1, f2):
    with open(f1, errors="ignore") as file1, open(f2, errors="ignore") as file2:
        f1_data = file1.read()
        f2_data = file2.read()
        res = SequenceMatcher(None, f1_data, f2_data).ratio()
        print("兩個檔案相似度為:",res)

plagiarism_checker(f1, f2)

測試結果:

檔案加解密

一個可以加密/解密任何檔案的小指令碼。先編寫解密和加密函數。

from cryptography.fernet import Fernet
import re
# 加密
def encrypt(f_name, key):
    fernet = Fernet(key)

    with open(f_name, 'rb') as file:
        original = file.read()

    encrypted = fernet.encrypt(original)

    with open(f_name, 'wb') as enc_file:
        enc_file.write(encrypted)

# 解密
def decrypt(f_name, key):
    fernet = Fernet(key)

    with open(f_name, 'rb') as enc_file:
        encrypted = enc_file.read()

    decrypted = fernet.decrypt(encrypted)
    with open(f_name, 'wb') as dec_file:
        dec_file.write(decrypted)

執行加密函數:

# 加密部分  每次密碼都是不同,所以儲存起來,免得解密失敗
key = Fernet.generate_key()
with open('加密的密碼.txt', 'w') as f:
    f.write(str(key))
    f.close()
f_name = input("Enter Your filename: ")
encrypt(f_name, key) # 執行加密

首先我執行加密函數,對1.docx加密,我再去開啟它是一片空白:

開啟儲存的密碼如下:

b'b3LaZZPrLeQFtN8JYUfz3n_uWntQ0x0zH0i5-9hzBLU='

執行解密:

f_name2 =input("Enter Your filename: ")
key2=open('加密的密碼.txt').read()
secret = re.findall(r'['](.*?)[']',key2)[0] # 通過正則匹配出密碼內容
decrypt(f_name2, secret ) # 執行解密

執行後就能再開啟了。

到此這篇關於分享4個Python中的非常好用的自動化指令碼的文章就介紹到這了,更多相關Python自動化指令碼內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com