Comment automatiser les tâches avec des scripts Python

Comment Automatiser Les Taches Avec Des Scripts Python



Les programmeurs, codeurs et développeurs peuvent automatiser les méthodes à l'aide de scripts Python, leur permettant ainsi d'économiser un temps et des efforts importants en effectuant des opérations répétitives. Python est un langage informatique, comme Java, qui fonctionne bien dans l'automatisation des processus. Comparé à d’autres langues, il est relativement facile à apprendre. Il dispose également d'une communauté vaste et dynamique et de bibliothèques intégrées pour automatiser des tâches particulières.

Installation de Python

Avant de commencer à automatiser les tâches, installez Python sur l'ordinateur ou le système. Pour installer Python, vous devez d'abord visiter le site officiel de Python. Assurez-vous d'ajouter Python au PATH du système lors de l'installation.







  1. Sélectionnez un IDE ou un éditeur de texte

N'importe quel éditeur de texte peut être utilisé pour créer les scripts Python. Néanmoins, les environnements de développement intégrés (IDE), notamment PyCharm, Visual Studio Code ou Jupyter Notebook, peuvent améliorer le processus grâce à des outils tels que la mise en évidence de la syntaxe et le débogage. Cependant, nous utilisons Notepad++ dans cet article.



  1. Déterminer la tâche qui doit être automatisée

Cela peut impliquer n'importe quoi, depuis l'envoi d'e-mails en masse, la création de rapports, le téléchargement de fichiers et la réalisation de sauvegardes.



  1. Rechercher les bibliothèques et les fonctions

Regardez les fonctions et bibliothèques qui peuvent automatiser les sous-tâches.





  1. Écrivez le script en Python

C'est ici que nous assemblons toutes les pièces pour créer un script de travail complet.

  1. Tâche

Automatisez la génération de rapports à partir des données stockées dans une feuille de calcul.



  1. Script Python

Nous pouvons utiliser un script Python pour lire les données d'une feuille de calcul et générer des rapports dans une variété de formats tels que PDF, HTML ou CSV. De plus, le script peut être utilisé pour distribuer automatiquement les rapports aux parties prenantes par courrier électronique ou Slack.

La création de rapports à l'aide des données d'une feuille de calcul nécessite plusieurs étapes. Nous allons vous présenter un script Python simplifié qui utilise la bibliothèque Pandas pour lire les données d'une feuille de calcul Excel et créer un rapport CSV. N'oubliez pas que nous pouvons nous appuyer sur ce script pour produire des rapports plus complexes dans d'autres formats et automatiser les notifications par e-mail ou Slack selon les besoins.

Installez les bibliothèques requises

Avant d'exécuter le script, nous devons installer la bibliothèque Pandas si elle n'est pas encore installée :

pépin installer pandas openpyxl

Le code Python a une fonction appelée generate_report() qui prend deux arguments : le chemin d'accès à une feuille de calcul Excel contenant les données salariales des employés et le chemin d'accès à un fichier CSV dans lequel le rapport doit être enregistré.

La fonction lit d'abord la feuille de calcul Excel dans un objet Pandas DataFrame. Ensuite, il effectue le traitement et l’analyse des données selon les besoins. La somme de la colonne « Salaire » est calculée dans ce cas par la fonction.

Ensuite, la fonction crée une chaîne de rapport contenant le salaire total de tous les employés. Enfin, la fonction enregistre le rapport dans un fichier CSV.

La fonction principale du code spécifie le fichier Excel d'entrée et le fichier de rapport de sortie, puis appelle la fonction generate_report() pour créer le rapport.

GenReport.py :
importer des pandas comme pd_obj
def generate_report ( emp_salary_data, emp_salary_report_file ) :
essayer:
# Lire les données de la feuille de calcul Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Effectuer le traitement et l'analyse des données selon les besoins
# Pour simplifier, supposons que nous voulions calculer la somme d'une colonne
salaire_total = df_obj [ 'Salaire' ] .somme ( )
# Créer un rapport
rapport_salaire = f 'Total des salaires de tous les employés : {salary_total}'
# Enregistrez le rapport dans un fichier CSV
avec ouvert ( emp_salary_report_file, 'Dans' ) comme csv_obj :
csv_obj.write ( rapport_salaire )

imprimer ( F 'Rapport généré et enregistré dans {emp_salary_report_file}' )
sauf exception comme ex:
imprimer ( F 'Une erreur s'est produite : {str(e)}' )
si __nom__ == '__principal__' :
# Spécifiez le fichier Excel d'entrée et le fichier de rapport de sortie
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'salaire_sum.csv'
# Appelez la fonction generate_report pour créer le rapport
Générer un rapport ( emp_salary_data, emp_salary_report_file )

Voici les données du fichier d'employé d'entrée :

Testez le script

Nous devons tester de manière approfondie le script après son écriture pour nous assurer qu'il fonctionne comme prévu. Nous utilisons le compilateur Python pour tester le fichier que nous automatisons. Dans ce cas, ce fichier génère et stocke avec succès le rapport dans un fichier CSV.

Planifier ou déclencher le script

En fonction des exigences de l'automatisation, nous pouvons exécuter le script Python de différentes manières :

  • Exécution manuelle : Exécutez le script manuellement en l'exécutant dans un IDE ou via la ligne de commande à l'aide de la commande suivante : python GénérerReport.py .
  • Tâches planifiées (Windows) : Nous pouvons exécuter le script à des heures ou à des intervalles spécifiques à l'aide du Planificateur de tâches Windows. Grâce au service Windows, nous pouvons également invoquer un événement spécifique.
  • Tâches Cron (Linux/macOS) : Nous pouvons utiliser des tâches cron pour planifier l'exécution du script à des moments précis sur les systèmes de type Unix.
  • Piloté par les événements : Nous pouvons déclencher votre script en réponse à des événements spécifiques, tels que des modifications de fichiers, en utilisant des bibliothèques comme watchdog ou en intégrant des webhooks.

Automatisation de la sauvegarde MySQL à l'aide de Python

Pour automatiser le processus de sauvegarde d'un serveur MySQL selon un planning horaire, nous pouvons utiliser Python en combinaison avec la bibliothèque « mysqlclient » pour nous connecter à la base de données MySQL et créer des sauvegardes, et nous pouvons utiliser un planificateur de tâches comme Cron (sur Unix). systèmes) pour exécuter le script Python à intervalles horaires. Voici un script Python que vous pouvez utiliser à cette fin :

Étape 1 : Installer les bibliothèques requises

Nous devons installer la bibliothèque « mysqlclient » pour la connectivité MySQL. Nous pouvons l'installer en utilisant pip :

Pépin installer client mysql

pépin installer analyseur de configuration

Étape 2 : Créer un fichier de configuration

Créez un fichier texte (par exemple, mysqlconfig.ini) pour stocker vos informations de connexion MySQL, y compris le mot de passe. Voici un exemple de ce à quoi pourrait ressembler le fichier « mysqlconfig.ini » :

[ mysql ]
mySQL_DB_HOST = hôte local
mySQL_DB_USERNAME = racine
monSQL_DB_PASSWORD = 1234
mySQL_DB_DATABASE_NAME = marquesw9_data

Étape 3 : Vérifier le répertoire MySQL Bin :

La commande « mysqldump » doit être située dans le répertoire bin MySQL. Vérifiez que le PATH du système inclut le répertoire bin. Nous pouvons modifier la variable d'environnement PATH pour inclure l'emplacement du bac MySQL.

Sous Windows : nous pouvons modifier le PATH du système en recherchant « Variables d'environnement » dans le menu « Démarrer » et en ajoutant le répertoire bin MySQL (par exemple, C:\Program Files\MySQL\MySQL Server X.X\bin) à la variable PATH.

Étape 3 : Écrivez le script Python

Créez un script Python, par exemple MySQLBackup.py, pour automatiser le processus de sauvegarde MySQL. Remplacez les espaces réservés par les détails de connexion à la base de données et les chemins de fichiers si nécessaire.

sous-processus d'importation comme sp
à partir de dateheure importer dateheure comme dt_obj
importer l'analyseur de configuration comme mysql_confg
# Détails de connexion à la base de données MySQL
# Charger les détails de la connexion MySQL à partir du fichier de configuration
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # Ajustez le chemin si nécessaire
mySQL_DB_HOST = config_obj.get ( 'mysql' , 'mySQL_DB_HOST' )
mySQL_DB_USERNAME = config_obj.get ( 'mysql' , 'monSQL_DB_USERNAME' )
mySQL_DB_PASSWORD = config_obj.get ( 'mysql' , 'mySQL_DB_PASSWORD' )
mySQL_DB_DATABASE_NAME = config_obj.get ( 'mysql' , 'mySQL_DB_DATABASE_NAME' )
# Répertoire de sauvegarde
bk_dir = 'répertoire_sauvegarde/'
# Obtenez la date et l'heure actuelles du nom du fichier de sauvegarde
horodatages = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Définir le nom du fichier de sauvegarde
mon_sql_bk = f 'backup_{timestamp_oj}.sql'
# Commande de vidage MySQL
mysql_dump_cmd = f 'mysqldump -h {mySQL_DB_HOST} -u {mySQL_DB_USERNAME} -p{mySQL_DB_PASSWORD} {mySQL_DB_DATABASE_NAME} > {bk_dir}{my_sql_bk}'

essayer:
# Exécutez la commande MySQL dump pour créer une sauvegarde
sp.run ( mysql_dump_cmd, coquille =Vrai, vérifier =Vrai )
imprimer ( F 'Sauvegarde terminée et enregistrée sous '{my_sql_bk}' dans '{bk_dir}'' )
sauf sp.CalledProcessError comme C'est:
imprimer ( F 'Erreur lors de la création de la sauvegarde : {str(e)}' )

Étape 4 : tester et exécuter le code

Étape 5 : Planifiez le script avec le Planificateur de tâches Windows

Maintenant, planifions le script Python pour qu'il s'exécute automatiquement à l'aide du Planificateur de tâches Windows :

Lancez le Planificateur de tâches Windows en tapant « Planificateur de tâches » dans la barre de recherche du menu « Démarrer » ou en tapant « taskschd.msc » dans la boîte de dialogue « Exécuter » (Win + R).

Sélectionnez «Bibliothèque du planificateur de tâches» dans le volet gauche du planificateur de tâches.

Dans le volet de droite, cliquez sur « Créer une tâche de base… » pour ouvrir l'« Assistant de création de tâche de base ».

Saisissez un nom et une description de la tâche. Ensuite, appuyez sur « Suivant ».

Choisissez « Quotidien » comme type de déclencheur (même si vous souhaitez l'exécuter toutes les heures, cela vous permet de définir un intervalle de répétition). Ensuite, cliquez sur « Suivant ».

Spécifiez la date et l'heure de début de la tâche de sauvegarde.

Choisissez « Répéter la tâche tous les : » et réglez-la sur 1 heure.

Réglez la durée sur « 1 jour ». Ensuite, cliquez sur « Suivant ».

Choisissez « Démarrer un programme », puis appuyez sur « Suivant ».

Parcourez et sélectionnez l’exécutable Python (python.exe) en cliquant sur « Parcourir ».

Parcourez et sélectionnez l’exécutable Python (python.exe) en cliquant sur « Parcourir ».

Entrez le chemin complet de votre script Python (par exemple, C:\path\to\mysql_backup.py) dans le champ « Ajouter des arguments ».

Entrez le répertoire qui contient votre script Python (par exemple, C:\path\to\) dans le champ « Démarrer dans (facultatif) ».

Cliquez sur « Suivant ».

Vérifiez les paramètres de la tâche et cliquez sur « Terminer » pour créer la tâche.

Conclusion

Nous pouvons créer des scripts d’automatisation fiables et efficaces qui réduisent le temps des flux de travail et le consacrent à des activités plus importantes en utilisant les outils de Python et ses meilleures pratiques. Nous avons fourni quelques exemples qui vous aideront certainement à automatiser vos tâches à l'aide de scripts Python.