Automatizacija QR kodova u Pythonu: biblioteka ili REST API?
Šta nudi Python biblioteka
Ko želi generisati QR kodove u Pythonu, naći će nekoliko slobodnih biblioteka. One od teksta prave sliku, često i SVG, lokalno i bez usluge. Za etikete sa serijskim brojevima, interne dokumente ili pristup WLAN-u to je upravo prava stvar.
Gdje statične slike dolaze do granice
Ovako generisan QR kod je statičan, sadržaj je u samom uzorku. Ako se odredište promijeni zbog relaunča, ako se tipfeler primijeti tek nakon štampe ili želiš znati koliko se često skenira, on ti ne pomaže. Za to postoje dinamički QR kodovi: Same-QR sprema odredište iza kratke adrese koja se ne mijenja, 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 kontrolnoj tabli pod Račun, „Pristup za CLI, skripte i agente“, kreiraj ključ, „čitanje + pisanje“ za kreiranje, i postavi ga kao varijablu okruženja 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 greškom, urlopen baca izuzetak. Sadržaj uvijek ima objekt error sa status, code i message. Obradi ga umjesto da skripta slijepo nastavi raditi.
Proces iz prakse
Proizvođač na svako pakovanje štampa QR kod za uputstvo:
- Skripta čita listu proizvoda iz CSV datoteke.
- Za svaki novi proizvod kreira QR kod i pamti njegov identifikator uz broj artikla.
- Kad izađe nova verzija uputstva, putem PATCH na /qr/<id> mijenja samo odredište. Za to joj treba ključ „potpuni“ i zaglavlje X-Confirm s pročitanim stanjem.
- Druga skripta s ključem za čitanje jednom mjesečno preuzima brojeve skeniranja.
Uračunaj ograničenja: najviše 10 promjena odredišta na sat i 30 na dan putem API-ja, 120 zahtjeva u minuti po ključu, na sat 60 u besplatnoj tarifi, 300 u Startu, 1.000 u Pro i 5.000 u Agenturi. Kod 429 sačekaj onoliko sekundi koliko piše u zaglavlju Retry-After.
Sigurno rukovanje ključem u skripti
- Ključ nikad ne upisuj u .py datoteku, nego ga čitaj iz okruženja.
- Za skripte koje samo čitaju koristi ključ „samo čitanje“.
- Za svaku skriptu poseban ključ s jasnim imenom i odgovarajućim rokom važenja.
Zaključak: Zašto Same-QR
Za statične QR kodove biblioteka je dovoljna. Čim se štampa, Same-QR je bolja osnova: vitak REST API u svakoj tarifi, razumljive greške, zaštita od paralelnog prepisivanja i odredišta koja možeš mijenjati i nakon štampe.
Počni odmah: registruj se besplatno na sameqr.com, 20 dinamičkih QR kodova trajno je besplatno. API, CLI i MCP server dostupni su u svakoj tarifi, dokumentacija je na sameqr.com/entwickler.
Često postavljana pitanja
Ne. REST API radi sa standardnom bibliotekom ili bilo kojom bibliotekom za web zahtjeve.
Da. Za nepromjenjiv sadržaj dovoljan je statičan QR kod, a za sve odštampano što bi se moglo mijenjati uzmi dinamički.
U kontrolnoj tabli kao PNG, SVG ili PDF, ili putem API-ja istim ključem. Načine opisuje dokumentacija na sameqr.com/entwickler.
Novi članci direktno u tvoj inbox
Savjeti o dinamičnim QR kodovima, novosti, bez spama. Odjava u bilo kojem trenutku.
Prijavom pristaješ na primanje newslettera. Saglasnost možeš povući u bilo kojem trenutku putem linka za odjavu u svakoj poruci.