← Retour au blog
IA & automatisation3 min de lecture

Automatiser les QR codes avec Python : bibliothèque ou API REST ?

Bild von Unsplash

Ce qu'une bibliothèque Python peut faire

Quiconque souhaite générer des QR codes avec Python trouve plusieurs bibliothèques gratuites. Elles transforment un texte en une image, souvent aussi en SVG, localement et sans service. Pour des étiquettes avec des numéros de série, des documents internes ou des accès Wi-Fi, c'est exactement ce qu'il faut.

Où les images statiques atteignent leurs limites

Un code généré ainsi est statique, le contenu est intégré dans le motif. Si la cible change lors d'un refonte, si une faute de frappe n'est détectée qu'après l'impression ou si vous voulez savoir combien de fois il est scanné, cela ne vous aide pas. Pour cela, il existe des codes dynamiques : Same-QR stocke la cible derrière une courte adresse constante, compte les scans et vérifie la nuit si chaque cible est accessible.

Codes dynamiques via API REST

L'API se trouve à l'adresse https://sameqr.com/api/v1. Créez une clé dans le tableau de bord sous Compte, « Accès pour CLI, scripts et agents », « lire + écrire » pour la création, et définissez-la comme variable d'environnement SAMEQR_API_KEY. Cet exemple utilise uniquement la bibliothèque standard :

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"])

Si l'API répond avec une erreur, urlopen lève une exception. Le contenu contient toujours un objet error avec status, code et message. Évaluez-le plutôt que de laisser le script continuer aveuglément.

Un flux de travail issu de la pratique

Un fabricant imprime sur chaque emballage un code pour les instructions :

  • Le script lit la liste des produits à partir d'un fichier CSV.
  • Pour chaque nouveau produit, il crée un code et mémorise son identifiant à côté du numéro d'article.
  • Si une nouvelle version de la notice apparaît, modifiez uniquement la cible via PATCH sur /qr/<id>. Cela nécessite une clé « complet » et l'en-tête X-Confirm avec la version lue.
  • Un second script avec une clé de lecture récupère les nombres de scans une fois par mois.

Prévoyez les limites : au maximum 10 modifications de cible par heure et 30 par jour via l'API, 120 demandes par minute par clé, 60 par heure dans le forfait gratuit, 300 dans Start, 1.000 dans Pro et 5.000 dans Agentur. En cas de 429, attendez le nombre de secondes indiqué dans l'en-tête Retry-After.

Clé sécurisée dans le script

  • Ne jamais écrire la clé dans le fichier .py, mais la lire depuis l'environnement.
  • Pour les scripts en lecture seule, utiliser une clé « lecture seule ».
  • Un script, une clé propre avec un nom parlant et une durée de vie adaptée.

Conclusion : pourquoi Same-QR

Pour les codes statiques, une bibliothèque suffit. Dès qu'il s'agit d'impression, Same-QR constitue une meilleure base : une API REST légère dans chaque forfait, des erreurs compréhensibles, une protection contre les écritures parallèles et des cibles que vous pouvez modifier après l'impression.

Lancez-vous tout de suite : inscrivez-vous gratuitement sur sameqr.com, deux codes QR dynamiques sont gratuits pour toujours. L’API, la CLI et le serveur MCP sont inclus dans chaque offre, la documentation se trouve sur sameqr.com/entwickler.

Créez des QR codes dynamiques gratuitement
Commencez avec 2 QR codes dynamiques gratuits à vie. Sans abonnement, sans carte bancaire.
Commencer gratuitement →

Questions fréquentes

Ai-je besoin d'une bibliothèque Python propre à Same-QR ?

Non. L'API REST fonctionne avec la bibliothèque standard ou toute bibliothèque pour les requêtes Web.

Puis-je mélanger des codes statiques et dynamiques ?

Oui. Pour les contenus fixes, un code statique suffit ; pour tout ce qui est imprimé avec un changement possible, utilisez un code dynamique.

Où puis-je obtenir le fichier d'impression ?

Dans le tableau de bord en PNG, SVG ou PDF, ou via l'API avec la même clé. Les méthodes sont décrites dans la documentation sur sameqr.com/entwickler.

Réservation

Réservez votre place avant le lancement.

Un e-mail dès le lancement de l’outil — avec les tarifs et l’offre gratuite. Pas de spam, désabonnement à tout moment.

Seulement jusqu’au lancementLancement dans les prochaines semaines
  • Votre compte gratuit est réservé — il n’y a de toute façon rien à payer pour l’instant
  • 90 jours de modifications de destination illimitées au lieu de 30, réservé aux inscrits en avance
  • Prix de lancement garanti, même si nous augmentons plus tard

En vous inscrivant, vous consentez à recevoir la newsletter. Vous pouvez retirer ce consentement à tout moment via le lien de désabonnement présent dans chaque e-mail.

À lire aussi