Toplu QR kodlarGeliştirme ve Özelleştirme

Listenizin her satırı için adlandırılmış ve baskıya hazır bir QR kod oluşturan bir Python betiği

Genellikle 15 dakika içinde hazırRevizyonlar dahilKalite kontrolü
Paketler
Ö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.

Listenizin her satırı için adlandırılmış ve baskıya hazır bir QR kod oluşturan bir Python betiği

Örnek sonuç

Standart paket için örnek

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 restoran için masa kartları, stok ya da ekipman etiketleri, biletler, ürün etiketleri, bir kataloğun her sayfası için kodlar: yüzlerce QR koda ihtiyacınız olduğunda onları bir web sitesinde tek tek oluşturmak bitmek bilmez. Bu Python betiği listenizi (CSV ya da Excel) okur ve her satır için bir QR kod oluşturur: bir bağlantı, bir metin, bir kartvizit ya da Wi-Fi bilgileri; ekranlar için PNG ya da baskı için SVG olarak, masa numarası ya da stok kodu gibi bir sütunun adıyla kaydedilir. Standart paketten itibaren bir alt yazı ekler ve her kodun geri okunduğunu kontrol eder; Premium onları etiket sayfası olarak bir PDF'ye yerleştirir. Bunlar statik kodlardır: bağlantı kodun içindedir, bu yüzden baskıdan sonra değiştirilemez ve taramalar sayılmaz. Çok sayıda basmadan önce birkaçını tarayarak deneyin.

Neler dahil

  • Neler alırsınızPython betiğini, adım adım talimatlar içeren bir README dosyasını ve Standart paketten itibaren boyutu, renkleri ve alt yazıları içeren bir ayar dosyasını barındıran bir ZIP arşivi; kod sipariş sayfasında da gösterilir.
  • Satır başına bir kodBağlantılar, metinler, kartvizitler ya da Wi-Fi bilgileri
  • Ekran ya da baskı içinBelirlediğiniz boyutta PNG ya da ölçeklenebilen SVG
  • Sizin istediğiniz şekilde adlandırılırListenizin bir sütununun adını taşıyan dosyalar
  • Geri okuma kontrolüStandart paketten itibaren her kod eşleştiğinden emin olmak için çözülür
  • Okunabilir kodYorumlarla; sonradan görünümü değiştirmek kolay

Nasıl çalışır

  1. 1
    ListeListeden bir örnek ve kodların nasıl kullanılacağını gönderirsiniz
  2. 2
    KodBetiği ve çalıştırma kılavuzunu yazarız
  3. 3
    DeneyinBirkaç satır için kod oluşturur ve telefonunuzla tararsınız
  4. 4
    DeğişikliklerPaketiniz kapsamında değişiklik ister, varsa hata mesajını gönderirsiniz

Sizden neler gerekiyor

Listenizin CSV ya da Excel olarak 10-20 satırı, hangi sütunun koda gireceği ve hangisinin dosya adını ya da alt yazıyı vereceği ve kodların nerede kullanılacağı: ekran, etiket, kart ya da tabela, biliyorsanız basılı boyutla. Siyah beyaz değilse renkler, Premium için PNG ya da SVG olarak logonuz ve etiket sayfası düzeni (kâğıt boyutu, satır ve sütun başına kod sayısı). Sisteminiz: Windows, macOS ya da Linux.

Size soracaklarımız:

  • Kodlar ne için?
  • Her koda ne girecek?
  • Ekran mı baskı mı ve hangi boyutta?

Paketleri karşılaştırın

PaketlerTemelListeden kodlar$16StandartAyarlı kodlar$33PremiumQR aracı$67
Teslim süresi1 gün2 gün3 gün
Revizyonlar123
Koden fazla 150 satıren fazla 400 satıren fazla 1.000 satır
Kod dosyası1en fazla 3en fazla 8
Ayar dosyasıHayırEvetEvet
Anlaşılır hata mesajları ve logHayırEvetEvet
Çalıştırma seçenekleri ve zamanlanmış çalıştırma kılavuzuHayırHayırEvet
Kurulum ve çalıştırma kılavuzu (README)EvetEvetEvet
DilPythonPythonPython
Sipariş ver TemelSipariş ver StandartSipariş 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.
Nasıl çalışır →

Sorular ve yanıtlar

Baskıdan sonra bir kodun nereye götürdüğünü değiştirebilir miyim?

Bu kodlarla olmaz: adres kodun kendisinin içindedir. Değiştirmeniz gerekebilirse kodları kendi sitenizde sonradan yönlendirebileceğiniz sayfalara yönlendirin.

Bir kodu kaç kişinin taradığını sayabilir mi?

Hayır, saymak için kod ile sayfa arasında bir sunucu gerekir ve bu betikte yoktur. Bağlantılarınıza UTM etiketleri ekleyip ziyaretleri sitenizin analitiğinde görebilirsiniz.

Ortada bir logo güvenli mi?

Kod yüksek hata düzeltme kullandığında küçük bir logo sorun olmaz; Premium bunu ayarlar. Geri okuma kontrolü ve telefonunuzla bir deneme taraması kesin sonucu söyler.

Kaç kod oluşturabilir?

Satır sayısı kadar; binlercesi sıradan bir bilgisayarda bir iki dakika sürer.

Yanıtınızı bulamadınız mı?

Paketler