>  기사  >  백엔드 개발  >  절반의 노력으로 두 배의 결과를 얻을 수 있는 매우 실용적인 Python 자동화 스크립트 10개를 공유하세요.

절반의 노력으로 두 배의 결과를 얻을 수 있는 매우 실용적인 Python 자동화 스크립트 10개를 공유하세요.

WBOY
WBOY앞으로
2023-04-12 16:31:151115검색

일상 업무와 학습에서 우리는 항상 다양한 문제에 직면하는데, 그 중 대부분은 계속해서 단순하고 반복되는 작업입니다. Python 스크립트를 사용하여 처리를 자동화하는 것이 좋습니다. 오늘은 우리에게 도움이 되는 10가지 고급 Python 스크립트를 공유해 드리겠습니다. 불필요한 시간 낭비를 줄이고 업무와 학습의 효율성을 향상시킵니다.

절반의 노력으로 두 배의 결과를 얻을 수 있는 매우 실용적인 Python 자동화 스크립트 10개를 공유하세요.

사진에 워터마크 추가

사진에 워터마크를 추가하는 코드는 다양합니다. 다음은 가장 간단한 형식일 수 있습니다.

from PIL import Image
from PIL import ImageFont
from PIL import ImageDraw

def watermark_Image(img_path,output_path, text, pos):
img = Image.open(img_path)
drawing = ImageDraw.Draw(img)
black = (10, 5, 12)
drawing.text(pos, text, fill=black)
img.show()
img.save(output_path)

img = '2.png'
watermark_Image(img, 'watermarked_2.jpg','Python爱好者集中营', pos=(10, 10))

텍스트 파일의 유사성을 감지합니다.

두 파일 간의 유사성, 유사성 정도, 다음 스크립트 파일이 유용할 수 있습니다.

from difflib import SequenceMatcher

def file_similarity_checker(f1, f2):
with open(f1, errors="ignore") as file1, open(f2, errors="ignore") as file2:
f1_data = file1.read()
f2_data = file2.read()
checking = SequenceMatcher(None, f1_data, f2_data).ratio()
print(f"These files are {checking*100} % similar")

file_1 = "路径1"
file_2 = "路径2"
file_similarity_checker(file_1, file_2)

파일 콘텐츠 암호화

때때로 우리 손에 있는 파일은 콘텐츠가 매우 중요하고 기밀입니다. 코드는 다음과 같습니다.

from cryptography.fernet import Fernet

def encrypt(filename, key):
fernet = Fernet(key)
with open(filename, 'rb') as file:
original = file.read()
encrypted = fernet.encrypt(original)
with open(filename, 'wb') as enc_file:
enc_file.write(encrypted)

key = Fernet.generate_key()
filename = "file.txt"
encrypt(filename, key)

키를 생성한 다음 파일 내용을 암호화합니다. 물론 이 키는 나중에 파일을 해독할 때 사용됩니다. 해독 코드는 다음과 같습니다:

def decrypt(filename, key):
fernet = Fernet(key)
with open(filename, 'rb') as enc_file:
encrypted = enc_file.read()
decrypted = fernet.decrypt(encrypted)
with open(filename, 'wb') as dec_file:
dec_file.write(decrypted)

decrypt(filename, key)

위 스크립트에서 키는 무작위로 생성된 임의의 숫자입니다. 물론 키는 다음과 같습니다.

import pyAesCrypt

def Encryption(input_file_path, output_file_path, key):
pyAesCrypt.encryptFile(input_file_path, output_file_path, key)
print("File has been decrypted")

def Decryption(input_file_path, output_file_path, key):
pyAesCrypt.decryptFile(input_file_path, output_file_path, key)
print("File has been decrypted")

사진 변환. to PDF

때때로 사진을 PDF 형식으로 변환하거나 사진을 PDF 파일에 순서대로 추가해야 할 때가 있습니다. 코드는 다음과 같습니다:

import os
import img2pdf

with open("Output.pdf", "wb") as file:
file.write(img2pdf.convert([i for i in os.listdir('文件路径') if i.endswith(".jpg")]))

사진의 길이와 너비를 수정하세요

사진을 수정하려는 경우 사진의 너비와 너비가 변경되면 다음 코드가 도움이 될 수 있습니다.

from PIL import Image
import os
def img_resize(file, h, w):
img = Image.open(file)
Resize = img.resize((h,w), Image.ANTIALIAS)
Resize.save('resized.jpg', 'JPEG', quality=90)

img_resize("文件路径", 400, 200)

사진에 대한 기타 작업

위 사진의 길이와 너비를 수정하는 것 외에도 다른 작업도 있습니다. 사진, 사진 내용 흐리게 처리:

img = Image.open('1.jpg')
blur = img.filter(ImageFilter.BLUR)
blur.save('output.jpg')

사진 90도 뒤집기:

img = Image.open('1.jpg')
rotate = img.rotate(90)
rotate.save('output.jpg')

사진 선명하게 하기:

img = Image.open('1.jpg')
sharp = img.filter(ImageFilter.SHARPEN)
sharp.save('output.jpg')

사진을 좌우 대칭으로 뒤집기, 코드는 다음과 같습니다:

img = Image.open('1.jpg')
transpose = img.transpose(Image.FLIP_LEFT_RIGHT)
transpose.save('output.jpg')

프로세스 회색조 사진:

img = Image.open('1.jpg')
convert = img.convert('L')
convert.save('output.jpg')

네트워크 속도 테스트

물론 네트워크 속도 테스트를 시작하기 전에 종속 모듈을 미리 다운로드해야 합니다

pip install speedtest-cli

그런 다음 네트워크 속도 테스트를 시작합니다.

from speedtest import Speedtest

def Testing_Speed(net):
download = net.download()
upload = net.upload()
print(f'下载速度: {download/(1024*1024)} Mbps')
print(f'上传速度: {upload/(1024*1024)} Mbps')
print("开始网速的测试 ...")

net = Speedtest()
Testing_Speed(net)

Conversion

예를 들어 미국 달러와 영국 파운드 간의 환율을 확인하고 싶습니다. 환율 변환, 미국 달러 100에서 몇 파운드를 변환할 수 있는지 코드는 다음과 같습니다.

# 导入模块
from currency_converter import CurrencyConverter
from datetime import date
# 案例一
conv = CurrencyConverter()
c = conv.convert(100, 'USD', 'GBP')
print(round(c, 2)) # 保留两位小数

또는 미국 달러와 유로의 환율 환산을 확인하려면 몇 유로를 미국 달러 100달러로 변환할 수 있나요?

# 案例二
c = conv.convert(100, 'USD', 'EUR', date=date(2022, 3, 30))
print(round(c, 2)) # 44.1

QR 코드 생성

QR 코드 생성 및 QR 코드 분석이 포함되어 있습니다. :

import qrcode
from PIL import Image
from pyzbar.pyzbar import decode

def Generate_qrcode(data):
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4,)
qr.add_data(data)
qr.make(fit=True)
image = qr.make_image(fill_color="black", back_color="white")
image.save("qrcode.png")

Generate_qrcode("Python爱好者集中营 欣一")

QR 코드 분석을 살펴보겠습니다.

def Decode_Qrcode(file_name):
result = decode(Image.open(file_name))
print("Data:", result[0][0].decode())

Decode_Qrcode("文件名")

간단한 웹 애플리케이션 만들기

Call Python 웹 애플리케이션을 만드는 데 사용되는 플라스크 모듈은 다음과 같습니다.

으아악

위 내용은 절반의 노력으로 두 배의 결과를 얻을 수 있는 매우 실용적인 Python 자동화 스크립트 10개를 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제