UTILISATION D'IRONXL POUR PYTHON

Comment importer un fichier Excel dans une table de base de données à l'aide de Python

Publié juin 6, 2024
Partager:

Dans le monde actuel axé sur les données, la manipulation et le traitement efficaces des données sont des tâches essentielles pour toute organisation ou tout individu. Pythongrâce à son riche écosystème de bibliothèques, il offre des outils puissants pour la manipulation et la gestion des données, tels que la bibliothèque import pandas. Un scénario courant est la nécessité d'extraire ou d'importer des données à partir deExcel des feuilles de calcul et de stocker ou d'insérer des données dans une base de données en vue d'une analyse plus approfondie ou d'une intégration avec d'autres systèmes. Dans ce tutoriel, nous allons explorer comment créer un script Python qui automatise ce processus, vous permettant de lire de manière transparente les données des fichiers de la feuille Excel et de les insérer dans une base de données. À la fin de ce tutoriel, vous serez prêt à gérer efficacement les tâches de migration de données. Commençons!

Comment importer un fichier Excel dans une table de base de données à l'aide de Python

  1. Commencez par installer la bibliothèque IronXL.

  2. Chargez votre fichier Excel en mémoire à l'aide d'IronXL.

  3. Chargez la feuille de calcul spécifique avec laquelle vous souhaitez travailler.

  4. Sélectionnez la plage de données précise que vous souhaitez importer.

  5. Établir une connexion avec n'importe quelle base de données telle que SQLite ou MySQL en utilisant Python.

  6. Créez une nouvelle table dans votre base de données SQLite pour accueillir les données importées.

  7. Insérer les lignes sélectionnées du fichier Excel dans la table SQLite nouvellement créée.

  8. Récupérer et sélectionner les données de la table SQLite créée en vue d'une analyse ou d'un traitement ultérieur.

    Dans ce tutoriel, nous utiliseronsIronXL, une bibliothèque Python réputée pour son efficacité dans le traitement des fichiers Excel. En intégrant IronXL dans notre script, nous assurons une extraction transparente des données des feuilles de calcul Excel, ce qui permet une insertion aisée dans les bases de données en vue d'une analyse et d'un traitement ultérieurs.

Qu'est-ce qu'IronXL ?

IronXL est une bibliothèque Python développée par Iron Software, offrant des fonctionnalités robustes pourlecture, générantet l'édition de fichiers Excel directement dans les applications Python. IronXL se distingue notamment par son indépendance vis-à-vis de l'installation de Microsoft Excel, ce qui simplifie le déploiement dans différents environnements. Avec IronXL, les développeurs bénéficient de :

Prise en charge multiplateforme: Fonctionnement transparent sur les plateformes Windows, macOS, Linux, Docker, Azure et AWS, garantissant l'adaptabilité à diverses configurations de développement.

Importation et exportation de données: Gère facilement l'importation de données à partir de fichiers XLS, XLSX, CSV et TSV, avec la possibilité d'exporter les feuilles de calcul vers ces formats et même vers JSON pour une meilleure interopérabilité.

Fonctionnalités de cryptage: Assurez la sécurité des données en tirant parti des capacités de cryptage d'IronXL, permettant la protection des fichiers XLSX, XLSM et XLTX avec des mots de passe.

Formules et recalculs: Travaillez sans effort avec Excelformulesle système de gestion de l'information de la Commission européenne (CEI) a été mis au point pour répondre aux besoins des utilisateurs, avec l'avantage supplémentaire d'un recalcul automatique chaque fois qu'une feuille est éditée, ce qui garantit la précision et la fiabilité de la manipulation des données.

**Personnaliser l'apparence des cellules individuelles en ajustant la police de caractèresstylesle logiciel permet d'améliorer la présentation visuelle de vos documents Excel grâce à l'utilisation d'images, de tailles, de motifs d'arrière-plan, de bordures et d'alignements.

**Avec la prise en charge de divers formats, notamment XLS, XLSX, XLST, XLSM, CSV et TSV, IronXL permet aux développeurs de traiter les données dans une multitude de scénarios avec facilité et efficacité.

Commençons par installer IronXL.

Étape 1 : Installation de la bibliothèque IronXL

La toute première étape consiste à installer la bibliothèque IronXL. Exécutez la commande suivante pour installer IronXL dans l'invite de commande.

pip install IronXL
PYTHON

Étape 2 : Charger le classeur Excel

L'étape suivante consiste à charger le fichier Excel. Nous utiliserons le fichier Excel suivant pour ce tutoriel.

Comment importer un fichier Excel dans une table de base de données en utilisant Python : Figure 1 - Exemple de fichier Excel en entrée

Le code suivant charge le fichier Excel existant en mémoire.

from ironxl import *     # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV
License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024";
workbook = WorkBook.Load("sample_excel.xlsx")
PYTHON

L'extrait de code Python ci-dessus illustre le chargement d'un classeur Excel nommé "sample_excel.xlsx" à l'aide de la bibliothèque IronXL for Python. Tout d'abord, le module Python nécessaire est importé d'IronXL for Python. Ensuite, une clé de licence est attribuée pour valider l'utilisation de la bibliothèque. Vous pouvez obtenir votre clé de licence gratuite à partir du siteSite web d'IronXL. Enfin, la méthode Charger est utilisée pour ouvrir et charger le classeur Excel spécifié dans la mémoire. Cela permet de manipuler ultérieurement son contenu de manière programmatique, par exemple en lisant des données, en modifiant les valeurs des cellules ou en appliquant une mise en forme.

Étape 3 : Sélection de la feuille de travail

Pour sélectionner une feuille de calcul dans un classeur Excel à l'aide d'IronXL, vous pouvez spécifier l'index ou le nom de la feuille de calcul.

worksheet = workbook.WorkSheets[0]
PYTHON

Cette ligne sélectionne la première feuille de calcul du classeur Excel chargé et l'affecte à la variable "feuille de calcul", ce qui permet d'effectuer des opérations ultérieures sur cette feuille de calcul spécifique dans le classeur. Cette opération permet de charger les données d'une feuille Excel dans une variable de la feuille de calcul.

Étape 4 : Ouvrir la connexion à la base de données

Dans ce tutoriel, nous utilisons une base de données SQLite au lieu d'un serveur de base de données MySQL. Pour lancer les opérations sur la base de données, nous commençons par établir une connexion avec la base de données.

import sqlite3
# Connect to SQLite database (or create it if it doesn't exist)
conn = sqlite3.connect('data.db')
PYTHON

La ligne ci-dessus établit une connexion avec une base de données SQLite nommée "data.db". Si la base de données spécifiée n'existe pas, elle sera créée automatiquement. Cette connexion permet une interaction ultérieure avec la base de données SQLite, telle que l'exécution de requêtes et la réalisation d'opérations de manipulation de données.

Étape 5 : Créer un tableau

L'étape suivante consiste à créer une table dans la base de données, où nous importerons les données d'un fichier Excel. Pour créer une table dans la base de données SQLite, vous pouvez exécuter une instruction SQL à l'aide de l'objet de connexion.

cursor = conn.cursor() // database objects
cursor.execute('''CREATE TABLE IF NOT EXISTS customer ( id Number,
            FirstName TEXT,
                    LastName TEXT,
                    Gender TEXT,
            Country TEXT,
            Age Number
                )''')
PYTHON

L'extrait de code ci-dessus initialise un objet curseur pour exécuter des commandes SQL dans la connexion à la base de données SQLite. Il crée une table nommée "client" avec les colonnes "id", "FirstName", "LastName", "Gender", "Country" et "Age". La table est créée si elle n'existe pas encore, en respectant les types de données spécifiés pour les colonnes.

Étape 6 : Importer des données dans la base de données à l'aide de Python

Nous allons maintenant insérer des données dans notre table nouvellement créée. Nous allons importer un fichier Excel et insérer ses données dans la base de données SQLite.

for i in range(2, 11):
    values_tuple = (
        worksheet[f"A{i}"].StringValue,
        worksheet[f"B{i}"].StringValue,
        worksheet[f"C{i}"].StringValue,
        worksheet[f"D{i}"].StringValue,
        worksheet[f"E{i}"].StringValue,
        worksheet[f"F{i}"].StringValue
    )
    cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple)
conn.commit()
PYTHON

Le code ci-dessus parcourt les lignes 2 à 10 de la feuille de calcul Excel, en extrayant les valeurs des colonnes A à F pour chaque ligne. Ces valeurs sont stockées dans un tuple, représentant les données à insérer dans la table "client". Le curseur exécute alors une commande SQL INSERT, incorporant le tuple de valeurs dans la table. Ce processus se répète pour chaque ligne, ce qui permet d'importer les données du fichier Excel dans la base de données SQLite. Enfin, conn.commit() valide la transaction, garantissant ainsi que les modifications sont enregistrées et conservées dans la base de données.

Étape 7 : Lecture des données de la base de données

Pour vérifier si les données ont été insérées correctement, vous pouvez lire les données de la table "client" dans la base de données SQLite à l'aide d'une requête SELECT. Par exemple :

cursor.execute("SELECT * FROM customer")
# Fetch all rows from the result set
rows = cursor.fetchall()
# Print the rows
for row in rows:
    print(row)
conn.close()
PYTHON

Le code ci-dessus exécute une requête SELECT sur la table "client" de la base de données SQLite, en récupérant toutes les lignes. Les lignes extraites sont stockées dans la variable "rows" à l'aide de la commande fetchall() méthode. Ensuite, chaque ligne est imprimée de manière itérative, en affichant les données insérées dans le tableau "client". Enfin, la connexion à la base de données est fermée à l'aide de la commande close() pour libérer des ressources.

Comment importer un fichier Excel dans une table de base de données en utilisant Python : Figure 2 - Lecture d'une sortie de base de données

Le code complet est le suivant :

import sqlite3
from ironxl import *     # Supported for XLSX, XLS, XLSM, XLTX, CSV, and TSV
License.LicenseKey = "IRONSUITE.ABC.XYZ.COM.15796-DEPLOYMENT.TRIAL-5X63V4.TRIAL.EXPIRES.27.MAY.2024";
workbook = WorkBook.Load("sample_excel.xlsx")
# Select worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Connect to SQLite database (or create it if it doesn't exist)
conn = sqlite3.connect('data.db')
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS customer ( id Number,
                    FirstName TEXT,
                    LastName TEXT,
                    Gender TEXT,
                    Country TEXT,
                    Age Number
                )''')
cursor.execute("DELETE FROM customer")
for i in range(2, 11):
    values_tuple = (
        worksheet[f"A{i}"].StringValue,
        worksheet[f"B{i}"].StringValue,
        worksheet[f"C{i}"].StringValue,
        worksheet[f"D{i}"].StringValue,
        worksheet[f"E{i}"].StringValue,
        worksheet[f"F{i}"].StringValue
    )
    cursor.execute("INSERT INTO customer VALUES (?, ?, ?, ?, ?, ?)", values_tuple)
conn.commit()  
cursor.execute("SELECT * FROM customer")
# Fetch all rows from the result set
rows = cursor.fetchall()
# Print the rows
for row in rows:
    print(row)
conn.close()
PYTHON

Conclusion

En conclusion, ce tutoriel a démontré une approche automatisée pourlecture des données libère tout son potentiel pour les activités de gestion des données. Profitez de la puissance de Python et d'IronXL pour optimiser vos flux de traitement de données et propulser vos projets en toute confiance.

< PRÉCÉDENT
Comment insérer des lignes dans un fichier Excel à l'aide de Python
SUIVANT >
Comment éditer des fichiers Excel en Python

Prêt à commencer ? Version : 2024.11 vient de paraître

Téléchargement gratuit de tuyaux Voir les licences > ;