← Natrag na blog
UI i automatizacija2 min čitanja

Automatizacija QR kodova u Pythonu: biblioteka ili REST API?

Slika s Unsplasha

Što nudi Python biblioteka

Tko želi stvarati QR kodove u Pythonu, nalazi nekoliko slobodnih biblioteka. Pretvaraju tekst u sliku, često i u SVG, lokalno i bez usluge. Za naljepnice sa serijskim brojevima, interne dokumente ili WLAN pristupe to je upravo pravo.

Gdje statične slike dosežu granice

Tako stvoren QR kod je statičan, sadržaj je u samom uzorku. Ako se odredište promijeni zbog redizajna, pogreška u tipkanju primijeti se tek nakon tiska ili želiš znati koliko se često skenira, on ne pomaže. Za to postoje dinamički QR kodovi: Same-QR sprema odredište iza kratke, nepromjenjive adrese, broji skeniranja i noću provjerava je li svako odredište dostupno.

Dinamički QR kodovi putem REST API-ja

API se nalazi na https://sameqr.com/api/v1. U nadzornoj ploči pod Račun, „Pristup za CLI, skripte i agente“, izradi ključ, „čitanje + pisanje“ za izradu, i postavi ga kao varijablu okoline SAMEQR_API_KEY. Ovaj primjer koristi samo standardnu biblioteku:

import json, os, urllib.request

API = "https://sameqr.com/api/v1"
KEY = os.environ["SAMEQR_API_KEY"]

def rufe(methode, weg, daten=None):
    req = urllib.request.Request(
        API + weg, method=methode,
        data=json.dumps(daten).encode() if daten else None,
        headers={"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"})
    with urllib.request.urlopen(req) as r:
        return json.load(r)

code = rufe("POST", "/qr", {"name": "Anleitung Modell A", "targetUrl": "https://example.com/anleitung-a"})
print(code["id"])

Ako API odgovori pogreškom, urlopen baca iznimku. Tijelo odgovora uvijek sadrži objekt error sa status, code i message. Obradi ga umjesto da skriptu slijepo pustiš da radi dalje.

Postupak iz prakse

Proizvođač na svaku ambalažu tiska QR kod za upute:

  • Skripta čita popis proizvoda iz CSV datoteke.
  • Za svaki novi proizvod izrađuje QR kod i pamti njegov identifikator uz broj artikla.
  • Kad izađe nova verzija uputa, preko PATCH-a na /qr/<id> mijenja samo odredište. Za to treba ključ „puni“ i zaglavlje X-Confirm s pročitanim stanjem.
  • Druga skripta s ključem za čitanje jednom mjesečno dohvaća brojeve skeniranja.

Uračunaj ograničenja: najviše 10 promjena odredišta na sat i 30 na dan preko API-ja, 120 upita u minuti po ključu, na sat 60 u besplatnom paketu, 300 u paketu Start, 1.000 u paketu Pro i 5.000 u paketu Agentur. Kod 429 pričekaj sekunde navedene u zaglavlju Retry-After.

Ključ sigurno u skripti

  • Ključ nikad ne upisuj u .py datoteku, nego ga čitaj iz okoline.
  • Za skripte koje samo čitaju koristi ključ „samo čitanje“.
  • Za svaku skriptu poseban ključ s jasnim imenom i odgovarajućim trajanjem.

Zaključak: Zašto Same-QR

Za statične QR kodove dostaje biblioteka. Čim se tiska, Same-QR je bolja osnova: jednostavan REST API u svakom paketu, razumljive pogreške, zaštita od istodobnog prepisivanja i odredišta koja možeš mijenjati i nakon tiska.

Kreni odmah: registriraj se besplatno na sameqr.com, 20 dinamičkih QR kodova trajno je besplatno. API, CLI i MCP poslužitelj dostupni su u svakom paketu, dokumentacija se nalazi na sameqr.com/entwickler.

Izradi dinamične QR kodove besplatno
Počni s 20 dinamičnih QR kodova koji su zauvijek besplatni. Bez pretplate, bez kreditne kartice.
Počni besplatno →

Često postavljana pitanja

Trebam li vlastitu Python biblioteku tvrtke Same-QR?

Ne. REST API radi sa standardnom bibliotekom ili bilo kojom bibliotekom za web upite.

Mogu li miješati statične i dinamičke QR kodove?

Da. Za nepromjenjive sadržaje dostaje statični QR kod, a za sve tiskano uz moguću promjenu uzmi dinamički.

Gdje dobivam datoteku za tisak?

U nadzornoj ploči kao PNG, SVG ili PDF, ili preko API-ja istim ključem. Načine opisuje dokumentacija na sameqr.com/entwickler.

Newsletter

Novi članci izravno u tvoj inbox

Savjeti o dinamičnim QR kodovima, novosti, bez spama. Odjava u svakom trenutku.

Prijavom pristaješ na primanje newslettera. Privolu možeš povući u bilo kojem trenutku putem poveznice za odjavu u svakoj e-poruci.

Nastavi čitati