YazılımÖdeme korumasıAyrıntılar
- Paket kapsamındaki revizyonlar ücretsizdir.
- Teslimattan sonraki 3 gün içinde yanıt vermezseniz iş otomatik olarak onaylanır.
Para, ödeme yaptığınızda bloke edilir ve yalnızca işi onayladığınızda aktarılır.

Örnek sonuç
Merging the monthly sales files of 9 shops into one Excel report
How it is run
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Folder: sales/2026-10, 9 files found
2026-11-02 09:14:03 INFO shop-01.csv: 1,284 rows
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 rows
2026-11-02 09:14:04 WARN shop-07.csv: 3 rows without a price skipped (lines 88, 412, 913)
2026-11-02 09:14:05 INFO Done: 10,412 rows -> report-2026-10.xlsx (sheets "Sales" and "Totals")
Settings, not code
The column names of each shop live in settings.ini, so a new shop or a renamed column is a line there:
[columns]
date = Date, Sale date, Day
product = Product, Item, Name
quantity = Qty, Quantity, Pcs
price = Price, Unit price
A part of the code
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Reads one shop's file and gives it the report's column names."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: no column for '{name}' (looked for {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
Files: a ZIP archive with merge_sales.py (310 lines), settings.ini, requirements.txt and a README with installing Python, running the script and what each message in the log means. The client runs it on their own computer.
Client: a small chain of 9 stationery shops; each shop sends its sales for the month as a CSV or Excel file, with slightly different column names. Task: one script that reads every file in a folder, brings the columns to one shape, and writes a single Excel report with all sales and a sheet of totals by shop.
Müşteri ve tüm ayrıntılar kurgusaldır.
Bu hizmet hakkında
Doğrudan fotoğraf makinesinden ya da telefondan gelen fotoğraflar genellikle her biri 5-10 MB'tır: bir ürün sayfası, site galerisi ya da e-posta için çok ağır. Bu Python betiği bir klasördeki her görseli tek tek dolaşır ve daha küçük bir kopyasını kaydeder: belirlediğiniz genişliğe ya da yüksekliğe esnetmeden sığdırılmış, seçtiğiniz kalitede sıkıştırılmış, JPEG ya da PNG olarak. Standart paketten itibaren aynı anda birkaç boyut oluşturabilir ve fotoğrafların taşıdığı gizli bilgileri, örneğin fotoğraf makinesini ve çekildiği yeri, kaldırabilir. Orijinalleriniz olduğu gibi kalır ve sonuçlar ayrı bir klasöre gider. İhtiyacınız olan boyutları ve iki üç örnek fotoğraf gönderin. Betiği kendi bilgisayarınızda kendiniz çalıştırırsınız. Yeniden boyutlandırır ve sıkıştırır; rötuş yapmaz, arka plan kesmez ya da renkleri düzeltmez.
Neler dahil
- Neler alırsınızPython betiğini, adım adım talimatlar içeren bir README dosyasını ve Standart paketten itibaren boyutlarınızı ve kalitenizi içeren bir ayar dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
- Esnetme yokOranlar korunur; kırpma ya da kenar boşluğu yalnızca isterseniz
- Kaliteyi siz seçersinizMemnun olduğunuz netlikte daha hafif dosyalar
- Orijinaller saklanırKopyalar ayrı bir klasöre gider
- Gizli bilgiler kaldırılırStandart paketten itibaren, isterseniz fotoğraf makinesi ve konum verileri silinir
- Okunabilir kodYorumlarla; sonradan boyut değiştirmek kolay
Nasıl çalışır
- 1BoyutlarBoyutları verir ve birkaç örnek fotoğraf gönderirsiniz
- 2KodBetiği ve çalıştırma kılavuzunu yazarız
- 3DeneyinBir klasörde çalıştırır ve kopyalara bakarsınız
- 4DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz
Sizden neler gerekiyor
Piksel cinsinden ihtiyacınız olan boyutlar (örneğin site için 1600 px genişlik ve küçük resimler için 400x400) ya da mağaza platformunuzun istediği boyutlar, şekil farklı olduğunda kırpılacağı mı kenar boşluğu ekleneceği mi, dosya formatı ve 300 KB altı gibi bir ağırlık sınırı. Örnek olarak iki üç fotoğrafınız, yaklaşık kaç fotoğraf olduğu ve alt klasörlerde olup olmadıkları. Sisteminiz: Windows, macOS ya da Linux.
Size soracaklarımız:
- Fotoğraflar nereye gidecek?
- Hangi boyutlara ihtiyacınız var?
- Ağırlık ya da format sınırı var mı?
- Nerede çalışacak?
Paketleri karşılaştırın
| Paketler | TemelTek boyut$16 | StandartAyarlı boyutlar$33 | PremiumGörsel aracı$67 |
|---|---|---|---|
| Teslim süresi | 1 gün | 2 gün | 3 gün |
| Revizyonlar | 1 | 2 | 3 |
| Kod | en fazla 150 satır | en fazla 400 satır | en fazla 1.000 satır |
| Kod dosyası | 1 | en fazla 3 | en fazla 8 |
| Ayar dosyası | Hayır | Evet | Evet |
| Anlaşılır hata mesajları ve log | Hayır | Evet | Evet |
| Çalıştırma seçenekleri ve zamanlanmış çalıştırma kılavuzu | Hayır | Hayır | Evet |
| Kurulum ve çalıştırma kılavuzu (README) | Evet | Evet | Evet |
| Dil | Python | Python | Python |
| Sipariş ver Temel | Sipariş ver Standart | Sipariş ver Premium |
Ödeme koruması
Sipariş verirken ödersiniz, ancak para yalnızca onaylanan iş için aktarılır.
- Sabit fiyatPaket fiyatı, ödeme yaptıktan sonra değişmez.
- Para bloke edilirÖdeme yaptığınızda tutar yalnızca bloke edilir. İşi onayladığınızda hizmete aktarılır.
- Teslimattan önce kontrolHer sonuç size ulaşmadan önce kalite kontrolünden geçer ve onaylamadan önce sipariş sayfasında görürsünüz.
- Ücretsiz revizyonlarBrifiniz kapsamında, paketin izin verdiği sayıda değişiklik isteyin.
- 3 gün sonra onayTeslimattan sonraki 3 gün içinde işi onaylamaz veya değişiklik istemezseniz iş otomatik olarak onaylanır. Teslimattan sonra sipariş sohbetine yazarsanız sipariş bekletilir; yanıt verdikten sonra 3 günlük süreyi yeniden başlatabiliriz ve bunu sohbette bildiririz.
- Yeniden yapım veya tam iadeSonuç brifinize uymuyorsa ve revizyonlar sorunu çözmediyse ya da iş teslim süresinin iki katından uzun sürerse sipariş sohbetine yazın: işi yeniden yaparız veya ödemenin tamamını iade ederiz.
Sorular ve yanıtlar
Hangi formatları okuyabilir?
JPEG, PNG, GIF, BMP, TIFF ve WebP. iPhone'lardan gelen HEIC fotoğrafları ve fotoğraf makinelerinden gelen RAW dosyaları ek bir kütüphane gerektirir; varsa söyleyin, paketinize uyup uymadığını bildirelim.
Fotoğraflar kalite kaybeder mi?
Her sıkıştırmada olduğu gibi biraz, ama olağan ayarlarda ekranda fark etmek zordur. Kaliteyi ayarlardan belirler ve örnek fotoğraflarda birkaç değer deneyebilirsiniz.
WebP de oluşturabilir mi?
Evet, aynı paket kapsamında JPEG'in yanına WebP de kaydedebilir. Asıl hedef WebP ise görselleri WebP'ye dönüştürme teklifimize bakın.
Fotoğraflarımı benim için siz mi boyutlandıracaksınız?
Hayır. Betiği bilgisayarınızda siz çalıştırırsınız, böylece fotoğraflarınız sizde kalır. Tek ihtiyacımız birkaç örnek.
Yanıtınızı bulamadınız mı?


