Planification des tâches à l'aide de Python

Planification des tâches à l'aide de Python
Certaines tâches de notre vie sont vraiment du temps et nous nous ennuyons à faire ces tâches à plusieurs reprises. Afin d'éviter ces tâches ennuyeuses, nous automatisons ces tâches de notre système. Python a de nombreux modules d'automatisation qui peuvent être utilisés pour automatiser nos trucs. Ci-dessous, nous discuterons de l'importance de l'automatisation et de la façon d'automatiser nos trucs à l'aide de Python. Nous discuterons également de certains modules d'automatisation dans Python qui aident à automatiser nos trucs. Ensuite, nous verrons certains cas d'utilisation d'automatisation en utilisant Python. À la fin, nous verrons comment nous pouvons planifier notre script Python pour s'exécuter automatiquement au démarrage.

Pourquoi nous automatiserons nos affaires

L'automatisation de nos affaires peut nous faciliter la vie. Il présente de nombreux avantages, mais certains avantages importants de l'automatisation sont donnés ci-dessous

  • Le premier et l'avantage le plus important de l'automatisation est d'économiser du temps.
  • Nous pouvons accroître l'efficacité de notre travail (je.e. plus de travail en moins de temps)
  • La précision des tâches prévues peut être améliorée.
  • En automatisant des choses, l'interaction humaine avec le système est réduite, donc les choses ennuyeuses sont automatisées.

Automation avec Python

Il existe de nombreuses langues de script comme Bash, Perl, etc. Pour automatiser les processus manuels, mais Python fournit un environnement réalisable pour répondre à nos besoins. Il est plus facile d'automatiser les choses en utilisant un langage de programmation Python que dans n'importe quelle autre langue. Python a de nombreux modules d'automatisation (i.e. Sous-processus, Shutil, OS, Pyautogui, sélénium etc.) qui peut être utilisé dans l'automatisation. Nous verrons certains cas d'utilisation de la façon dont nous automatiserons nos affaires.

Modules d'automatisation dans Python

Ici, nous discuterons de certains modules d'automatisation dans Python comme OS, sous-processus, fermeture, datetime, sélénium etc. Ces modules sont utilisés pour exécuter des commandes système et peuvent également être utilisés pour manipuler les répertoires système. Ces modules ont intégré des fonctions qui facilitent l'exécution de tâches sur le système.

OS et Sous-processus Les modules sont utilisés dans le même but presque dans le même but. Certaines des fonctions intégrées de ces modules sont données ci-dessous

  • chdir () \\ pour changer de répertoire
  • mkdir () \\ pour créer un nouveau répertoire
  • renom () \\ pour renommer un fichier
  • listDir () \\ pour répertorier tous les fichiers et répertoires
  • getCwd () \\ connaître notre répertoire actuel
  • System () \\ pour exécuter les commandes système
  • call () \\ pour exécuter les commandes système

De la même manière Fermer Le module a de nombreuses fonctions qui permet d'interagir avec le système. Certaines fonctions de ce module sont données ci-dessous

  • move () \\ pour déplacer un fichier
  • copy () \\ pour copier un fichier
  • rmtree () \\ pour supprimer tous les fichiers dans le répertoire et les sous-répertoires

DateTime Le module est utilisé pour trouver la date et l'heure actuelles. Il est également utilisé pour trouver le jour de la semaine et bien d'autres choses. Nous pouvons planifier notre tâche à tout moment et date à l'aide de ce module. Dans les cas d'utilisation suivants, nous l'utiliserons pour trouver uniquement la date et l'heure actuelles.

  • DateTime.aujourd'hui () \\ pour trouver la date actuelle et Temps

SÉLÉNIUM Le module est utilisé pour automatiser la connexion de notre site Web en cours. Nous pouvons se connecter automatiquement à notre site Web et le mettre à jour en utilisant SÉLÉNIUM module. SÉLÉNIUM A de nombreuses fonctions intégrées qui sont utilisées pour effectuer différentes tâches liées aux navigateurs.

Comment exécuter les commandes système dans Python

Nous pouvons exécuter des commandes système en python en utilisant OS et Sous-processus modules. Voici la syntaxe pour exécuter la commande System dans Python

OS.Système ('Command')

OU

sous-processus.Appelez («commande»)

Par exemple, si nous voulons répertorier tous les fichiers et répertoires du répertoire actuel, nous exécuterons la commande suivante dans Python Script

OS.système («LS»)

OU

sous-processus.Appelez («LS»)

Comment automatiser les trucs avec Python

Python peut être utilisé pour automatiser de nombreux types de tâches quotidiennes qui peuvent gagner du temps. Ici, nous verrons quelques cas d'utilisation de l'automatisation de nos affaires. Nous discuterons de l'organisation des fichiers dans le répertoire de téléchargement et de la sauvegarde de nos fichiers importants.

Organiser des fichiers dans le répertoire de téléchargement

Lorsque nous téléchargeons n'importe quel type de fichier, il va par défaut dans le répertoire de téléchargement. Lorsque nous devons trouver un fichier, cela peut causer un problème car il existe de nombreux types de fichiers mélangés dans le répertoire de téléchargement. Nous allons maintenant écrire un script Python pour automatiser le système de manière à ce que différents types de fichiers (e.g. mp3, png, xls etc) va dans différents répertoires. Le code complet est donné ci-dessous. Ce code vérifiera chaque type de fichier un par un, puis il créera le répertoire correspondant. Après cela, il déplacera le fichier dans les répertoires connexes (E.g… le fichier MP3 ira dans le répertoire «audio»).

Importer un système d'exploitation
Importer la fermeture
Importer DateTime
tandis que 1:
#calculate l'heure actuelle, la minute et le deuxième
Aujourd'hui = DateTime.DateTime.aujourd'hui()
Aujourd'hui = str (aujourd'hui)
current_hour = aujourd'hui [11:13]
Current_Minute = Today [14:16]
current_sec = aujourd'hui [17:19]
# s'assurer que le système organisera des fichiers à 08h00
si current_hour == '08' et current_minute == '00' et current_sec == '00':
# Modification du répertoire en téléchargement
OS.chdir ("path_to_download_directory")
# Enregistrer tous les noms de fichiers dans une liste
fichiers = os.ListDir (OS.getCwd ())
pour le nom de fichier dans les fichiers:
# Ignorer les répertoires
Sinon OS.chemin.Isdir (nom de fichier):
# Sélection des fichiers MP3
si '.mp3 'dans le nom de fichier:
# Création du répertoire «audio» s'il n'existe pas
Sinon OS.chemin.existe («audio»):
OS.mkdir ('audio')
# Fichier mobile dans le répertoire «Audio»
fermer.déplacer (nom de fichier, 'audio')
# Sélection des fichiers MP4
Elif '.MP4 'dans le nom de fichier:
# Création du répertoire «vidéo» s'il n'existe pas
Sinon OS.chemin.existe («vidéo»):
OS.mkdir ('vidéo')
# Fichier mobile dans le répertoire «vidéo»
fermer.Déplacer (nom de fichier, «vidéo»)
# Sélection des fichiers PDF
Elif '.pdf 'dans le nom de fichier:
# Création du répertoire «PDF» si ce n'est pas
Sinon OS.chemin.existe («PDF»):
OS.mkdir ('pdf')
# fichier mobile dans le répertoire PDF
fermer.déplacer (nom de fichier, «pdf»)
# Sélection des fichiers JPG et PNG
Elif '.jpg 'dans le nom de fichier ou'.png 'dans le nom de fichier:
# Création du répertoire «Images» si ce n'est pas
Sinon OS.chemin.existe («images»):
OS.Mkdir («photos»)
# Fichier mobile dans le répertoire «images»
fermer.déplacer (nom de fichier, «images»)
# Sélection des fichiers Excel
Elif '.xls 'dans le nom de fichier:
# Création du répertoire «Excel» s'il n'est pas
Sinon OS.chemin.existe («Excel»):
OS.Mkdir ('Excel')
# Fichier mobile dans le répertoire «Excel»
fermer.Déplacer (nom de fichier, «Excel»)
# Sélection '.fichiers ppt '
Elif '.ppt 'dans le nom de fichier:
# Création du répertoire «Power Point» s'il n'existe pas
Sinon OS.chemin.existe («Power Point»):
OS.Mkdir («Power Point»)
# Fichier mobile dans le répertoire «Power Point»
fermer.Déplacer (nom de fichier, «Power Point»)
# Sélection '.Fichiers des documents
Elif '.docx 'dans le nom de fichier:
# Création du répertoire «Fichier Word» s'il n'est pas existant
Sinon OS.chemin.existant («fichier word»):
OS.mkdir ('word fichier')
# Fichier mobile dans le répertoire «Word Fichier»
fermer.déplacer (nom de fichier, «fichier word»)

Tout d'abord, nous économiserons l'heure actuelle dans différentes variables, puis nous vérifierons si l'heure est exacte '08: 00 'ou non. Le programme vérifiera l'heure tous les jours et exécutera le code si l'heure est «08: 00», puis le code principal s'exécutera. Dans le code principal, nous changeons d'abord notre répertoire pour télécharger le répertoire. Ici, nous enregistrerons tous les noms de fichiers dans une liste nommée fichiers. Nous allons maintenant lire tous les fichiers un par un et filtrer uniquement les fichiers. Nous ignorerons les répertoires car nous allons organiser des fichiers uniquement.

Nous allons maintenant vérifier chaque type de fichier, qu'il s'agisse de MP3, MP4, JPG, PDF, XLS, PPT et DOCX ou non. Après avoir vérifié chaque type de fichier, nous vérifierons si le répertoire correspondant existe ou non. Par exemple, si le fichier est mp3, nous vérifierons le répertoire «audio» existe ou non. Si le répertoire correspondant n'existe pas, nous créerons le répertoire. Après avoir créé le répertoire, nous déplacerons notre fichier dans ce répertoire. De cette façon, tous les fichiers peuvent être déplacés vers leurs répertoires correspondants.

Ce code s'exécutera en continu et continuera à vérifier si le temps est '08: 00 'ou non. Tous les jours à '08: 00 ', les fichiers seront organisés automatiquement. Ce code peut être planifié pour s'exécuter à chaque fois que vous démarrez votre système à l'aide de Crontab. Crontab a été expliqué ci-dessous.

Sauvegarde automatiquement vos fichiers à l'aide des commandes système

Vous avez des fichiers importants dans un répertoire lié à votre projet et certains fichiers sont supprimés. Alors que ferez-vous? Dans ce type de situation, la création d'une sauvegarde de vos fichiers est importante. Mais la création d'une sauvegarde de vos fichiers est vraiment ennuyeuse et la prise de tâche du temps. Cette tâche peut être effectuée automatiquement en écrivant un script Python. Voici le code pour effectuer cette tâche. Ce code convertira chaque fichier en fichier zip, puis il créera un répertoire de sauvegarde s'il n'existe pas. Après cela, le fichier zip sera déplacé dans le répertoire de sauvegarde.

Importer un système d'exploitation
Importer DateTime
tandis que 1:
# Économiser l'heure actuelle
Aujourd'hui = DateTime.DateTime.aujourd'hui()
Aujourd'hui = str (aujourd'hui)
current_hour = aujourd'hui [11:13]
Current_Minute = Today [14:16]
current_sec = aujourd'hui [17:19]
# S'assurer que le code s'exécutera à exact '08: 00 '
si current_hour == '08' et current_minute == '00' et current_sec == '00':
# Changer le répertoire en documents
OS.chdir ('path_to_documents_directory')
# Enregistrer tous les noms de fichiers dans une liste
fichiers = os.ListDir (OS.getCwd ())
# Création du répertoire «Backup» s'il n'existe pas
Sinon OS.chemin.existe («sauvegarde»):
OS.Mkdir («sauvegarde»)
pour le fichier dans les fichiers:
# Ignorer les répertoires
Sinon OS.chemin.isdir (fichier):
# définir un nom de fichier sans espaces
File original_name =
fichier = fichier.diviser(" ")
file_name = "".join (fichier)
# Définition de zip_filename
zip_file_name = file_name + ".zipper"
# Vérification si le fichier existe déjà dans le répertoire de sauvegarde ou non
Sinon OS.chemin.existant ('backup /' + zip_file_name):
# Modification du nom du fichier sans espaces
OS.renom (original_name, file_name)
# Création d'un fichier zip à l'aide de la commande système
OS.System ("zip" + zip_file_name + "" + file_name)
#Moving Zip File dans le répertoire de sauvegarde à l'aide de la commande système
OS.System ("MV" + ZIP_FILE_NAME + "BACKUP")
# Changer le nom de fichier en son nom d'origine
OS.renom (file_name, original_name)

Tout d'abord, nous enregistrerons l'heure actuelle dans les variables et ensuite nous vérifierons si l'heure est «08: 00» ou non. Si le temps est exact '08: 00 ', alors le script principal s'exécutera. Dans le code principal, tout d'abord, nous allons au répertoire dans lequel des fichiers importants sont présents. Ensuite, nous enregistrons tous les noms de fichiers dans une liste. Nous allons maintenant créer un répertoire «sauvegarde» dans lequel nous allons enregistrer tous les fichiers zip. Si ce répertoire existe déjà, nous ignorerons cela. Nous allons maintenant lire chaque fichier et vérifier s'il s'agit de fichiers ou non. Les répertoires seront ignorés et les fichiers seront pris en compte.

Afin de créer un fichier zip d'un fichier utilisant la commande système, tout d'abord, nous renommerons ce fichier sans espaces en tant que nom de fichier avec des espaces est considéré comme un fichier différent dans chaque espace, lorsqu'il est exécuté dans une commande système à l'aide du script Python. Le nom du fichier est enregistré dans une variable 'Original_filename' et le fichier est renommé sans espaces. Maintenant, nous allons définir le nom du fichier zip identique au nom du fichier avec l'extension '.zipper'.

Après cela, nous utiliserons la commande système «zip» pour zip ce fichier, puis nous déplacerons ce fichier zip dans le répertoire «Backup» à l'aide de la commande système «mv». Ensuite, nous renommerons à nouveau le fichier avec son nom d'origine avec des espaces dedans. Ce code sera planifié sur le système pour s'exécuter à chaque fois automatiquement lorsque vous démarrez votre système à l'aide de Crontab.

Automatiser l'exécution d'un script à l'aide de Crontab

Nous avons écrit les scripts d'automatisation ci-dessus. Maintenant, nous voulons exécuter ces scripts automatiquement chaque fois que notre système redémarre. Pour ce faire, nous ajoutons notre script en crontab. Afin d'ajouter une tâche à Crontab, effectuez les étapes suivantes

Tout d'abord, saisissez la commande suivante pour modifier le fichier crontab

ubuntu @ ubuntu: ~ $ crontab -e

-Le drapeau E signifie Open Crontab en mode d'édition. Après avoir ouvert le fichier crontab maintenant, nous ajouterons notre tâche dans ce fichier en utilisant la commande suivante à la fin du fichier

@reboot python / path / to / python / script

Cela exécutera automatiquement le script Python à chaque fois que vous démarrez votre système.

Conclusion

Dans cet article, l'importance de l'automatisation dans la vie pratique a été expliquée. En lisant cet article, vous avez une idée que comment vous pouvez automatiser vos tâches simples que vous effectuez tous les jours. Vous devriez certainement rechercher plus de bibliothèques et de fonctions Python pour une automatisation meilleure et facile.