Kako Automatski Optimizirati Slike za Web Shop Uz Pomoć Pythona

Ako vodite web shop, već znate koliko je brzina učitavanja stranice ključna za uspjeh. 

Brža stranica znači zadovoljnije korisnike, bolju SEO poziciju i, naravno, više prodaje. Jedan od ključnih koraka u optimizaciji brzine je pravilna optimizacija slika, a .webp format je tu neprikosnoveni prvak.


U ovom vodiču pokazat ću vam kako automatizirati proces optimizacije slika. 

Skripta će resizeati slike na 1000x1000 piksela, komprimirati ih tako da zadrže kvalitetu, a zatim ih pretvoriti u .webp format, koji je posebno prilagođen za brzi web.


Zašto koristiti .webp format?

.webp je Googleov format slika dizajniran za web. 

Njegove prednosti su:

Skripta za optimizaciju slika

Skripta koju ćemo koristiti obrađuje slike posebno prilagođene za proizvode (1:1 omjer) i automatski ih priprema za korištenje na web shopu.

Koraci:

Potrebni alati

Prije nego počnemo, osigurajte da imate instalirane sljedeće alate:

Python: Instalirajte Python 3.8 ili noviju verziju s python.org.

Knjižnice: Instalirajte potrebne knjižnice s:

pip install pillow

Kod za optimizaciju slika

from PIL import Image

import os

from pathlib import Path


def optimize_image(input_folder):

    # Kreiraj izlaznu mapu

    output_folder = os.path.join(input_folder, "optimized")

    os.makedirs(output_folder, exist_ok=True)


    # Procesiranje svake slike u mapi

    for filename in os.listdir(input_folder):

        if Path(filename).suffix.lower() in ['.jpg', '.jpeg', '.png']:

            input_path = os.path.join(input_folder, filename)

            output_path = os.path.join(output_folder, f"{Path(filename).stem}.webp")


            try:

                print(f"Obrađujem: {filename}...")

                

                # Otvori sliku

                with Image.open(input_path) as img:

                    # Provjeri je li omjer slike 1:1

                    if img.size[0] != img.size[1]:

                        print(f"Preskačem {filename}: nije 1:1 format.")

                        continue

                    

                    # Resizeaj sliku na 1000x1000 piksela

                    img_resized = img.resize((1000, 1000))

                    

                    # Spremi sliku u .webp format s kompresijom

                    img_resized.save(output_path, "WEBP", quality=85)

                    print(f"Spremljena optimizirana slika: {output_path}")

            

            except Exception as e:

                print(f"Greška pri obradi {filename}: {e}")


if __name__ == "__main__":

    # Unesite put do mape sa slikama

    input_folder = input("Unesite put do mape sa slikama: ").strip()

    if not os.path.exists(input_folder):

        print("Greška: Mapa ne postoji!")

    else:

        optimize_image(input_folder)

        print("\nOptimizacija slika je završena! Provjerite 'optimized' mapu.")


Kako pokrenuti skriptu?

Što je važno napomenuti?

Prednosti automatizacije

Ova skripta štedi sate rada i omogućava vam da brzo optimizirate sve slike za svoj web shop. 

Brzina učitavanja stranica je ključna, a uz .webp format vaša stranica neće samo izgledati profesionalno, već će raditi brže od konkurencije. 🚀

Goran Peremin

With over 10 years of experience in the field, Goran has worked on a wide range of projects, including performance marketing for eCommerce, SEO, design thinking, UX design, graphic design, social media management, and influencer marketing. It’s safe to say that Goran is a master of many skills, each more refined than the last.


Goran holds great responsibility in shaping and executing all kinds of digital marketing strategies.

 From the high peaks of content marketing to the deep caves of SEO, PPC, email, and social media, he navigates them all. He leads Bima’s digital presence, always vigilant in measuring and reporting on the performance of all digital marketing campaigns. Indeed, he ensures they achieve their goals, both ROI and KPI, lest he incur the wrath of the marketing gods.

Goran, a Growth Marketer with a keen eye for trends and insights, tirelessly optimizes his costs and performance based on such findings.

He is a true brainstorming wizard, effortlessly conjuring up new and creative growth strategies, boldly running experiments and conversion tests to uncover the most effective paths to digital marketing success.


LinkedInGitHub