Untitled
unknown
plain_text
a year ago
2.6 kB
2
Indexable
import os import requests from shutil import copyfile from PIL import Image, ImageFont, ImageDraw def arşivle(klasör_yolu): """ Belirtilen klasördeki tüm EPUB kitaplarını arşivler. Args: klasör_yolu: Arşivlenecek kitapların bulunduğu klasörün yolu. """ # Dosya isimlerini listele dosya_isimleri = os.listdir(klasör_yolu) for dosya_ismi in dosya_isimleri: # Dosyanın tam yolunu al dosya_yolu = os.path.join(klasör_yolu, dosya_ismi) # Dosyanın EPUB olup olmadığını kontrol et if dosya_ismi.endswith(".epub"): # EPUB dosyasıysa, kitap ismini ve uzantısını ayır kitap_ismi, uzantı = os.path.splitext(dosya_ismi) # Kitap kapağı resmini indir kitap_kapağı_url = kitap_ismi + ".jpg" # Varsayılan kapak resmi URL'si kapak_resmi_yolu = os.path.join(klasör_yolu, kitap_ismi + ".jpg") indir_kitap_kapağı(kitap_kapağı_url, kapak_resmi_yolu) # Klasör resmini güncelle güncelle_klasör_resmi(klasör_yolu, kapak_resmi_yolu) # EPUB dosyasını arşivle arşiv_yolu = os.path.join(klasör_yolu, kitap_ismi + ".zip") arşivle_epub(dosya_yolu, arşiv_yolu) def indir_kitap_kapağı(url, dosya_yolu): """ Belirtilen URL'den kitap kapağı resmini indirir ve kaydeder. Args: url: Kitap kapağı resmi URL'si. dosya_yolu: Kaydedilecek resim dosyasının yolu. """ try: # URL'den resim içeriğini indir response = requests.get(url) resim_içeriği = response.content # Resim içeriğini dosyaya kaydet with open(dosya_yolu, "wb") as dosya: dosya.write(resim_içeriği) except requests.exceptions.RequestException: print(f"Hata: {url} adresinden kitap kapağı resmi indirilemedi.") def güncelle_klasör_resmi(klasör_yolu, kapak_resmi_yolu): """ Klasör resmini kitap kapağı resmiyle günceller. Args: klasör_yolu: Klasörün yolu. kapak_resmi_yolu: Kitap kapağı resmi dosyasının yolu. """ # Klasör resmini aç klasör_resmi = Image.open(klasör_yolu + "\\folder.ico") # Kitap ismini klasör resmine ekle çizim = ImageDraw.Draw(klasör_resmi) font = ImageFont.truetype("arial.ttf", 16) kitap_ismi, _ = os.path.splitext(os.path.basename(klasör_yolu)) çizim.text((10, 10), kitap_ismi, font=font, fill=(0, 0, 0)) # Klasör resmini kaydet klasör_resmi.save(klasör_yolu + "\\folder.ico") def arşivle_epub(dosya_yolu, arşiv_yolu): """ EPUB
Editor is loading...
Leave a Comment