Ö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
Birçok sistem verileri yalnızca JSON ya da XML olarak alır: bir mağazaya ya da CRM'e içe aktarma, bir iş ortağının yüklemesi, bir uygulama için besleme. Bu Python betiği CSV dışa aktarımınızı okur ve dosyayı ihtiyacınız olan yapıda yazar: alan adları, hangi alanların diğerlerinin içinde yer aldığı, doğru türlerde sayılar ve tarihler ve kodlama. Premium pakette satırları tek bir kayıtta da gruplayabilir, örneğin tüm kalemleriyle bir sipariş. CSV'nin birkaç satırını ve karşı tarafın istediği JSON ya da XML'in bir örneğini veya tarifini (dokümantasyonu ya da örnek bir dosya) gönderin. Betiği kendi bilgisayarınızda kendiniz çalıştırırsınız. Verdiğiniz verileri dönüştürür: sonucu hiçbir yere yüklemez ve diğer sisteme göre kontrol etmez.
Neler dahil
- Neler alırsınızPython betiğini, adım adım talimatlar içeren bir README dosyasını ve Standart paketten itibaren sütun-alan eşlemesini içeren bir ayar dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
- JSON ya da XMLYa da tek bir CSV'den ikisi birden
- Sizin yapınızÖrneğinizdeki ya da dokümantasyondaki gibi alan adları ve iç içe yapı
- Doğru türlerSayılar, true ya da false, ihtiyacınız olan formatta tarihler
- Kodlamalar ele alınırYaygın her kodlamadaki CSV'den UTF-8 çıktı
- Okunabilir kodYorumlarla; sonradan alan eklemek kolay
Nasıl çalışır
- 1ÖrneklerBirkaç CSV satırı ve ihtiyacınız olan JSON ya da XML'in bir örneğini gönderirsiniz
- 2KodBetiği ve çalıştırma kılavuzunu yazarız
- 3DeneyinDosyanızı dönüştürür ve ona ihtiyaç duyan sistemde denersiniz
- 4DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz
Sizden neler gerekiyor
CSV'nizin 10-20 satırı (uydurma değerler olabilir) ve sonucun nasıl görünmesi gerektiği: örnek bir JSON ya da XML dosyası, diğer sistemin dokümantasyonunun bunu anlatan bölümü ya da varsa bir XSD şeması. Hangi sütunun hangi alana gideceği, tarihlerin ve sayıların nasıl yazılacağı ve birkaç satırın tek bir kayıt oluşturup oluşturmadığı. Sisteminiz: Windows, macOS ya da Linux.
Size soracaklarımız:
- JSON ya da XML nereye gidecek?
- CSV nasıl görünüyor?
- Sonuç nasıl görünmeli?
- Nerede çalışacak?
Paketleri karşılaştırın
| Paketler | TemelTek düz dönüştürme$16 | StandartAyarlı dönüştürme$33 | PremiumDönüştürme 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
XML'i bir şemaya göre kontrol edebilir mi?
Premium pakette evet, XSD dosyasını gönderirseniz: betik uymayan satırları bildirir. Diğer sistemin dosyayı sonunda kabul edip etmeyeceği kendi kontrollerine bağlıdır.
Tersine, JSON'dan CSV'ye de çalışabilir mi?
Evet, bu aynı türden bir iştir. Brifte anlatın ve JSON'un bir örneğini gönderin.
Sonucu bir API'ye gönderebilir mi?
Bu teklif dosyayı oluşturur. Servisin herkese açık bir API'si varsa ve kendi anahtarınızı ayar dosyasına koyarsanız, onu bir servisin API'sine göndermek Premium'un satır sınırı içinde eklenebilir.
Programlama bilmem gerekiyor mu?
Hayır. README, Python'u bir kez nasıl kuracağınızı ve betiği dosyanız üzerinde nasıl çalıştıracağınızı açıklar.
Yanıtınızı bulamadınız mı?