Untitled
unknown
plain_text
a year ago
2.6 kB
7
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