0% ont trouvé ce document utile (0 vote)
182 vues6 pages

Python

python

Transféré par

idrisssonkoue7
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
182 vues6 pages

Python

python

Transféré par

idrisssonkoue7
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Pour répondre à ta demande, nous allons créer un programme Python qui :

1. **Enregistre les informations des employés et leur stock dans un fichier Excel.**

2. **Génère un QR code** à partir des informations des employés et les enregistre dans un
fichier image.

3. **Permet de scanner ces QR codes** pour vérifier si la personne est bien un employé de
l'entreprise.

### Prérequis :

Nous allons utiliser les bibliothèques suivantes pour réaliser ce programme :

- **`pandas`** : Pour manipuler les données et les enregistrer dans un fichier Excel.

- **`qrcode`** : Pour générer des QR codes.

- **`openpyxl`** : Pour travailler avec des fichiers Excel (si nécessaire).

- **`opencv-python`** : Pour scanner des QR codes avec la caméra.

- **`pyzbar`** : Pour décoder les QR codes scannés.

#### Installation des bibliothèques :

Tu peux installer ces bibliothèques en utilisant `pip` :

```bash

pip install pandas openpyxl qrcode opencv-python pyzbar

```

### Programme complet :

#### Étape 1 : Créer un fichier Excel avec les informations des employés

Nous allons commencer par enregistrer les informations des employés (par exemple, nom,
prénom, ID, et stock) dans un fichier Excel.
```python

import pandas as pd

# Fonction pour enregistrer les informations des employés et leur stock dans un fichier Excel

def enregistrer_employes():

# Demander à l'utilisateur de saisir les informations des employés

nom = input("Nom de l'employé : ")

prenom = input("Prénom de l'employé : ")

id_employe = input("ID de l'employé : ")

stock = input("Stock associé à l'employé : ")

# Créer un dictionnaire avec les informations

employe_data = {

'Nom': [nom],

'Prénom': [prenom],

'ID Employé': [id_employe],

'Stock': [stock]

# Convertir en DataFrame

df = [Link](employe_data)

# Sauvegarder dans un fichier Excel

df.to_excel("[Link]", index=False, mode='a', header=not


[Link]._has_excelexcel_writer)

print("Informations de l'employé enregistrées avec succès!")

# Appel de la fonction
enregistrer_employes()

```

#### Étape 2 : Générer un QR Code pour chaque employé

Nous allons maintenant générer un QR code contenant les informations de chaque employé,
telles que le nom, prénom, ID et stock, et sauvegarder chaque QR code sous forme d'image.

```python

import qrcode

# Fonction pour générer un QR code pour un employé

def generer_qrcode(nom, prenom, id_employe, stock):

# Créer un texte avec les informations de l'employé

info_employe = f"Nom: {nom}\nPrénom: {prenom}\nID: {id_employe}\nStock: {stock}"

# Générer le QR code à partir du texte

qr = [Link](

version=1,

error_correction=[Link].ERROR_CORRECT_L,

box_size=10,

border=4,

qr.add_data(info_employe)

[Link](fit=True)

# Créer l'image du QR code

img = qr.make_image(fill="black", back_color="white")


# Sauvegarder l'image avec un nom unique

[Link](f"qrcode_{id_employe}.png")

print(f"QR Code généré pour l'employé {nom} {prenom} avec l'ID {id_employe}.")

# Exemple d'utilisation

generer_qrcode('Dupont', 'Pierre', '12345', '10')

```

#### Étape 3 : Scanner un QR Code et vérifier les informations

Ensuite, nous allons ajouter une fonction qui permet de scanner le QR code d'un employé à
l'aide de la caméra et de vérifier les informations contenues dans le QR code.

```python

import cv2

from [Link] import decode

# Fonction pour scanner un QR code et extraire les informations

def scanner_qrcode():

# Initialiser la caméra

cap = [Link](0)

while True:

ret, frame = [Link]()

if not ret:

break

# Détecter les QR codes dans l'image

decoded_objects = decode(frame)
for obj in decoded_objects:

# Extraire les informations contenues dans le QR code

qr_data = [Link]("utf-8")

# Afficher les informations extraites

print(f"Informations extraites du QR Code :\n{qr_data}")

# Afficher un rectangle autour du QR code détecté

pts = [Link]

if len(pts) == 4:

pts = [Link](pts, dtype=np.int32)

pts = [Link]((-1, 1, 2))

[Link](frame, [pts], True, (0, 0, 255), 5)

else:

[Link](frame, (pts[0].x, pts[0].y), 5, (0, 0, 255), -1)

# Afficher l'image avec les QR codes détectés

[Link]("Scanner QR Code", frame)

# Quitter la boucle en appuyant sur la touche 'q'

if [Link](1) & 0xFF == ord('q'):

break

[Link]()

[Link]()

# Exemple d'utilisation du scanner

scanner_qrcode()

```
#### Explication :

- **Enregistrement des employés** : Cette fonction permet d'enregistrer les informations des
employés dans un fichier Excel avec `pandas`. Chaque fois qu'un employé est ajouté, ses
informations sont ajoutées à un fichier Excel appelé `[Link]`.

- **Génération de QR Codes** : Pour chaque employé, un QR code est généré avec les
informations de l'employé (nom, prénom, ID et stock) et sauvegardé sous forme d'image.
Chaque QR code est stocké dans un fichier avec le nom `qrcode_IDemploye.png`.

- **Scanner et vérifier le QR Code** : Cette fonction ouvre la caméra de l'ordinateur pour


scanner un QR code. Lorsqu'un QR code est détecté, les informations qu'il contient sont
extraites et affichées à l'écran.

#### Étapes d'exécution :

1. Lance d'abord la fonction **`enregistrer_employes()`** pour ajouter les employés dans le


fichier Excel.

2. Ensuite, utilise la fonction **`generer_qrcode()`** pour générer les QR codes pour les
employés ajoutés.

3. Enfin, utilise la fonction **`scanner_qrcode()`** pour scanner un QR code et vérifier les


informations de l'employé.

### Conclusion :

Ce programme Python permet de gérer les informations des employés, de générer des QR codes
pour chaque employé et de scanner ces QR codes pour vérifier leur identité dans l'entreprise. Il
utilise des bibliothèques populaires comme `pandas` pour la gestion des données et `qrcode`,
`opencv-python`, et `pyzbar` pour la génération et la lecture des QR codes.

Vous aimerez peut-être aussi