Python projelerinizde kullanabileceğiniz bazı harika otomasyon komut betiklerini sizler için listelemiştim. Bu serinin devam olan bölüm 2’de 5 tane daha hayatınızı kolaylaştıracak muhteşem betiği sizlerle paylaşıyorum.
Önceki yazıyı oku : Python’da 5 Muhteşem Otomasyon Komut Betiği
Not: Bu yazıda script yerine Türkçe karşılığı olan betik kelimesini kullandım.
Bu yüzden sayfamı yer imlerine ekleyin ve hadi başlayalım.
1. Photo Compressor
Bu betik, kalite aynıyken fotoğraflarınızı daha düşük boyutlara sıkıştıracaktır.
import PIL
from PIL import Image
from tkinter.filedialog import *fl=askopenfilenames()img = Image.open(fl[0])img.save("result.jpg", "JPEG", optimize = True, quality = 10)
2. Image Watermarker
Bu basit komut dosyası herhangi bir görüntüyü filigranlayacaktır. Metni, konumu ve Yazı Tipi’ni ayarlayabilirsiniz.
from PIL import Image
from PIL import ImageFont
from PIL import ImageDrawdef watermark_img(img_path,res_path, text, pos):
img = Image.open(img_path)
wm = ImageDraw.Draw(img)
col= (9, 3, 10)
wm.text(pos, text, fill=col)
img.show()
img.save(res_path)img = 'initial.jpg'
watermark_img(img, 'result.jpg','IshaanGupta', pos=(1, 0))
3. İntihal Denetleyicisi
Bu komut dosyası, iki dosya arasında intihal olup olmadığını kontrol eder.
from difflib import SequenceMatcherdef 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(f"These files are {res*100} % similar")f1=input("Enter file_1 path: ")
f2=input("Enter file_2 path: ")
plagiarism_checker(f1, f2)
4. Dosya Şifrele ve Şifresini Çöz
Herhangi bir dosyayı Şifreleyebilen/Şifresini Çözebilen küçük bir komut betiği.
from cryptography.fernet import Fernetdef 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()f_name = input("Enter Your filename: ")
encrypt(f_name, key)
decrypt(f_name, key)
5. URL’leri kısaltmak
Bazen büyük URL’leri okumak ve paylaşmak çok can sıkıcı hale gelir. Bu komut dosyası, URL’leri kısaltmak için harici bir API kullanır.
from __future__ import with_statement
import contextlib
try:
from urllib.parse import urlencode
except ImportError:
from urllib import urlencodetry:
from urllib.request import urlopen
except ImportError:
from urllib2 import urlopen
import sysdef make_tiny(url):
request_url = ('http://tinyurl.com/api-create.php?' +
urlencode({'url':url}))
with contextlib.closing(urlopen(request_url)) as response:
return response.read().decode('utf-8')def main():
for tinyurl in map(make_tiny, sys.argv[1:]):
print(tinyurl)if __name__ == '__main__':
main()
Son düşünceler
Pekala, işte projelerinizi oluşturmanıza yardımcı olabilecek bazı müthiş otomasyon Python komut betikleri -2’yi gördünüz. Umarım bu makaleyi faydalı bulmuşsunuzdur ve bazı yeni şeyler öğrenmişsinizdir. Bu makaleyi Pythoneer Arkadaşlarınızla paylaşın.
Mutlu Kodlamalar!