Πώς να αυτοματοποιήσετε εργασίες με σενάρια Python

Pos Na Automatopoiesete Ergasies Me Senaria Python



Οι προγραμματιστές, οι κωδικοποιητές και οι προγραμματιστές μπορούν να αυτοματοποιήσουν τις μεθόδους χρησιμοποιώντας σενάρια Python, εξοικονομώντας τους σημαντικό χρόνο και προσπάθεια εκτελώντας επαναλαμβανόμενες λειτουργίες. Η Python είναι μια γλώσσα υπολογιστή, όπως η Java, που αποδίδει καλά στον αυτοματισμό διεργασιών. Σε σύγκριση με άλλες γλώσσες, είναι σχετικά εύκολο να το μάθεις. Διαθέτει επίσης μια μεγάλη, ζωντανή κοινότητα και ενσωματωμένες βιβλιοθήκες για την αυτοματοποίηση συγκεκριμένων εργασιών.

Εγκατάσταση Python

Πριν ξεκινήσετε να αυτοματοποιείτε τις εργασίες, εγκαταστήστε την Python στον υπολογιστή ή το σύστημα. Για να εγκαταστήσετε την Python, πρέπει πρώτα να επισκεφτείτε τον επίσημο ιστότοπο της Python. Βεβαιωθείτε ότι έχετε προσθέσει Python στο PATH του συστήματος κατά την εγκατάσταση.







  1. Επιλέξτε ένα IDE ή ένα πρόγραμμα επεξεργασίας κειμένου

Οποιοσδήποτε επεξεργαστής κειμένου μπορεί να χρησιμοποιηθεί για τη δημιουργία των σεναρίων Python. Ωστόσο, τα Ενσωματωμένα Περιβάλλοντα Ανάπτυξης (IDE), συμπεριλαμβανομένων των PyCharm, Visual Studio Code ή Jupyter Notebook, μπορούν να βελτιώσουν τη διαδικασία με εργαλεία όπως η επισήμανση σύνταξης και ο εντοπισμός σφαλμάτων. Ωστόσο, χρησιμοποιούμε το Notepad++ σε αυτό το άρθρο.



  1. Προσδιορίστε την εργασία που πρέπει να αυτοματοποιηθεί

Αυτό θα μπορούσε να περιλαμβάνει οτιδήποτε, από την αποστολή μαζικών μηνυμάτων ηλεκτρονικού ταχυδρομείου, τη δημιουργία αναφορών, τη λήψη αρχείων και τη δημιουργία αντιγράφων ασφαλείας.



  1. Ερευνήστε τις Βιβλιοθήκες και τις Λειτουργίες

Δείτε τις λειτουργίες και τις βιβλιοθήκες που μπορούν να αυτοματοποιήσουν τις δευτερεύουσες εργασίες.





  1. Γράψτε το σενάριο σε Python

Εδώ συγκεντρώνουμε όλα τα κομμάτια για να δημιουργήσουμε ένα πλήρες σενάριο εργασίας.

  1. Εργο

Αυτοματοποιήστε τη δημιουργία αναφορών από τα δεδομένα που είναι αποθηκευμένα σε ένα υπολογιστικό φύλλο.



  1. Σενάριο Python

Μπορούμε να χρησιμοποιήσουμε ένα σενάριο Python για να διαβάσουμε τα δεδομένα από ένα υπολογιστικό φύλλο και να δημιουργήσουμε αναφορές σε διάφορες μορφές όπως PDF, HTML ή CSV. Επιπλέον, το σενάριο μπορεί να χρησιμοποιηθεί για την αυτόματη διανομή των αναφορών στους ενδιαφερόμενους μέσω email ή Slack.

Χρειάζονται πολλά βήματα για τη δημιουργία αναφορών χρησιμοποιώντας τα δεδομένα υπολογιστικού φύλλου. Θα σας δώσουμε ένα απλοποιημένο σενάριο Python που χρησιμοποιεί τη βιβλιοθήκη Pandas για να διαβάσει τα δεδομένα από ένα υπολογιστικό φύλλο Excel και να δημιουργήσει μια αναφορά CSV. Να θυμάστε ότι μπορούμε να βασιστούμε σε αυτό το σενάριο για να δημιουργήσουμε πιο περίπλοκες αναφορές σε άλλες μορφές και να αυτοματοποιήσουμε τις ειδοποιήσεις μέσω email ή Slack όπως απαιτείται.

Εγκαταστήστε τις Απαιτούμενες Βιβλιοθήκες

Πριν εκτελέσουμε το σενάριο, πρέπει να εγκαταστήσουμε τη βιβλιοθήκη Pandas εάν δεν έχει εγκατασταθεί ακόμα:

κουκούτσι εγκαθιστώ pandas openpyxl

Ο κώδικας της Python έχει μια συνάρτηση που ονομάζεται generate_report() η οποία παίρνει δύο ορίσματα: τη διαδρομή προς ένα υπολογιστικό φύλλο Excel που περιέχει τα δεδομένα μισθού των εργαζομένων και τη διαδρομή προς ένα αρχείο CSV όπου πρέπει να αποθηκευτεί η αναφορά.

Η συνάρτηση διαβάζει πρώτα το υπολογιστικό φύλλο του Excel σε ένα αντικείμενο Pandas DataFrame. Στη συνέχεια, εκτελεί την επεξεργασία και ανάλυση των δεδομένων όπως απαιτείται. Το άθροισμα της στήλης 'Μισθός' υπολογίζεται σε αυτήν την περίπτωση από τη συνάρτηση.

Στη συνέχεια, η συνάρτηση δημιουργεί μια συμβολοσειρά αναφοράς που περιέχει τον συνολικό μισθό όλων των εργαζομένων. Τέλος, η συνάρτηση αποθηκεύει την αναφορά σε ένα αρχείο CSV.

Η κύρια συνάρτηση του κώδικα καθορίζει το αρχείο εισόδου Excel και το αρχείο αναφοράς εξόδου και, στη συνέχεια, καλεί τη συνάρτηση generate_report() για τη δημιουργία της αναφοράς.

GenReport.py:
εισαγωγή παντα όπως και pd_obj
def generate_report ( emp_salary_data, emp_salary_report_file ) :
δοκιμάστε:
# Διαβάστε δεδομένα από το υπολογιστικό φύλλο του Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Εκτελέστε επεξεργασία και ανάλυση δεδομένων όπως απαιτείται
# Για απλότητα, ας υποθέσουμε ότι θέλουμε να υπολογίσουμε το άθροισμα μιας στήλης
μισθός_σύνολο = df_obj [ 'Μισθός' ] .άθροισμα ( )
# Δημιουργία αναφοράς
μισθός_αναφορά = στ 'Σύνολο μισθών όλων των εργαζομένων: {salary_total}'
# Αποθηκεύστε την αναφορά σε αρχείο CSV
με ανοιχτό ( emp_salary_report_file, 'Σε' ) όπως και csv_obj:
csv_obj.write ( μισθός_αναφορά )

Τυπώνω ( φά 'Η αναφορά δημιουργήθηκε και αποθηκεύτηκε στο {emp_salary_report_file}' )
εκτός Εξαίρεσης όπως και πρώην:
Τυπώνω ( φά 'Παρουσιάστηκε σφάλμα: {str(e)}' )
αν __όνομα__ == '__κύριος__' :
# Καθορίστε το αρχείο εισόδου Excel και το αρχείο αναφοράς εξόδου
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'salary_sum.csv'
# Καλέστε τη συνάρτηση generate_report για να δημιουργήσετε την αναφορά
δημιουργία_αναφοράς ( emp_salary_data, emp_salary_report_file )

Ακολουθούν τα δεδομένα στο αρχείο εισόδου υπαλλήλου:

Δοκιμάστε το Σενάριο

Πρέπει να δοκιμάσουμε εκτενώς το σενάριο αφού γραφτεί για να βεβαιωθούμε ότι λειτουργεί όπως προβλέπεται. Χρησιμοποιούμε τον μεταγλωττιστή Python για να δοκιμάσουμε το αρχείο που αυτοματοποιούμε. Σε αυτήν την περίπτωση, αυτό το αρχείο δημιουργεί και αποθηκεύει με επιτυχία την αναφορά σε ένα αρχείο CSV.

Προγραμματίστε ή ενεργοποιήστε το σενάριο

Ανάλογα με τις απαιτήσεις του αυτοματισμού, μπορούμε να εκτελέσουμε το σενάριο Python με διάφορους τρόπους:

  • Χειροκίνητη εκτέλεση: Εκτελέστε το σενάριο μη αυτόματα εκτελώντας το σε ένα IDE ή μέσω της γραμμής εντολών χρησιμοποιώντας την ακόλουθη εντολή: python GenerateReport.py .
  • Προγραμματισμένες εργασίες (Windows): Μπορούμε να εκτελέσουμε το σενάριο σε συγκεκριμένες ώρες ή διαστήματα χρησιμοποιώντας τον Προγραμματιστή εργασιών των Windows. Χρησιμοποιώντας την Υπηρεσία των Windows, μπορούμε επίσης να καλέσουμε ένα συγκεκριμένο συμβάν.
  • Cron Jobs (Linux/macOS): Μπορούμε να χρησιμοποιήσουμε εργασίες cron για να προγραμματίσουμε την εκτέλεση του σεναρίου σε συγκεκριμένες ώρες σε συστήματα που μοιάζουν με Unix.
  • Με γνώμονα την εκδήλωση: Μπορούμε να ενεργοποιήσουμε το σενάριό σας ως απόκριση σε συγκεκριμένα συμβάντα, όπως αλλαγές αρχείων, χρησιμοποιώντας βιβλιοθήκες όπως το watchdog ή ενσωματώνοντας webhook.

Αυτοματοποίηση του MySQL Backup με χρήση Python

Για να αυτοματοποιήσουμε τη διαδικασία δημιουργίας αντιγράφων ασφαλείας ενός διακομιστή MySQL σε ωριαίο πρόγραμμα, μπορούμε να χρησιμοποιήσουμε την Python σε συνδυασμό με τη βιβλιοθήκη 'mysqlclient' για να συνδεθούμε στη βάση δεδομένων MySQL και να δημιουργήσουμε αντίγραφα ασφαλείας και μπορούμε να χρησιμοποιήσουμε έναν προγραμματιστή εργασιών όπως το Cron (σε Unix-based συστήματα) για την εκτέλεση του σεναρίου Python σε ωριαία διαστήματα. Το παρακάτω είναι ένα σενάριο Python που μπορείτε να χρησιμοποιήσετε για αυτό το σκοπό:

Βήμα 1: Εγκαταστήστε τις Απαιτούμενες Βιβλιοθήκες

Πρέπει να εγκαταστήσουμε τη βιβλιοθήκη «mysqlclient» για συνδεσιμότητα MySQL. Μπορούμε να το εγκαταστήσουμε χρησιμοποιώντας pip:

Κουκούτσι εγκαθιστώ mysqlclient

κουκούτσι εγκαθιστώ configurser

Βήμα 2: Δημιουργήστε ένα αρχείο διαμόρφωσης

Δημιουργήστε ένα αρχείο κειμένου (π.χ. mysqlconfig.ini) για να αποθηκεύσετε τις πληροφορίες σύνδεσης MySQL, συμπεριλαμβανομένου του κωδικού πρόσβασης. Ακολουθεί ένα παράδειγμα για το πώς μπορεί να μοιάζει το αρχείο 'mysqlconfig.ini':

[ mysql ]
mySQL_DB_HOST = localhost
mySQL_DB_USERNAME = root
mySQL_DB_PASSWORD = 1234
mySQL_DB_DATABASE_NAME = brandsw9_data

Βήμα 3: Επαληθεύστε τον κατάλογο MySQL Bin :

Η εντολή 'mysqldump' πρέπει να βρίσκεται στον κατάλογο bin MySQL. Βεβαιωθείτε ότι η PATH του συστήματος περιλαμβάνει τον κατάλογο bin. Μπορούμε να τροποποιήσουμε τη μεταβλητή περιβάλλοντος PATH ώστε να συμπεριλάβει τη θέση του κάδου MySQL.

Στα Windows: Μπορούμε να επεξεργαστούμε τη PATH του συστήματος εξερευνώντας τις 'Μεταβλητές περιβάλλοντος' στο μενού 'Έναρξη' και προσθέτοντας τον κατάλογο bin MySQL (π.χ. C:\Program Files\MySQL\MySQL Server X.X\bin) στη μεταβλητή PATH.

Βήμα 3: Γράψτε το σενάριο Python

Δημιουργήστε ένα σενάριο Python, π.χ. MySQLBackup.py, για να αυτοματοποιήσετε τη διαδικασία δημιουργίας αντιγράφων ασφαλείας MySQL. Αντικαταστήστε τα σύμβολα κράτησης θέσης με τις λεπτομέρειες σύνδεσης της βάσης δεδομένων και τις διαδρομές αρχείων, όπως απαιτείται.

υποδιεργασία εισαγωγής όπως και sp
από την ημερομηνία ώρα εισαγωγής ημερομηνία ώρα όπως και dt_obj
εισαγωγή ρυθμιστή παραμέτρων όπως και mysql_confg
# Λεπτομέρειες σύνδεσης βάσης δεδομένων MySQL
# Φορτώστε τα στοιχεία σύνδεσης MySQL από το αρχείο διαμόρφωσης
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # Προσαρμόστε τη διαδρομή εάν χρειάζεται
mySQL_DB_HOST = config_obj.get ( 'mysql' , 'mySQL_DB_HOST' )
mySQL_DB_USERNAME = config_obj.get ( 'mysql' , 'mySQL_DB_USERNAME' )
mySQL_DB_PASSWORD = config_obj.get ( 'mysql' , 'mySQL_DB_PASSWORD' )
mySQL_DB_DATABASE_NAME = config_obj.get ( 'mysql' , 'mySQL_DB_DATABASE_NAME' )
# Εφεδρικός κατάλογος
bk_dir = 'backup_directory/'
# Λάβετε την τρέχουσα ημερομηνία και ώρα για το εφεδρικό όνομα αρχείου
timestamps = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Καθορίστε το όνομα αρχείου αντιγράφου ασφαλείας
my_sql_bk = f 'backup_{timestamp_oj}.sql'
# Εντολή Dump 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}'

δοκιμάστε:
# Εκτελέστε την εντολή dump MySQL για να δημιουργήσετε ένα αντίγραφο ασφαλείας
sp.run ( mysql_dump_cmd, κέλυφος = Αλήθεια, έλεγχος =Αλήθεια )
Τυπώνω ( φά 'Η δημιουργία αντιγράφων ασφαλείας ολοκληρώθηκε και αποθηκεύτηκε ως '{my_sql_bk}' στο '{bk_dir}'' )
εκτός από το sp.CalledProcessError όπως και Είναι:
Τυπώνω ( φά 'Σφάλμα δημιουργίας αντιγράφου ασφαλείας: {str(e)}' )

Βήμα 4: Δοκιμάστε και εκτελέστε τον κώδικα

Βήμα 5: Προγραμματίστε τη δέσμη ενεργειών με τον Προγραμματιστή εργασιών των Windows

Τώρα, ας προγραμματίσουμε το σενάριο Python να εκτελείται αυτόματα χρησιμοποιώντας τον Προγραμματιστή εργασιών των Windows:

Εκκινήστε το Windows Task Scheduler πληκτρολογώντας «Task Scheduler» στη γραμμή αναζήτησης του μενού «Start» ή πληκτρολογώντας «taskschd.msc» στο πλαίσιο διαλόγου «Run» (Win + R).

Επιλέξτε 'Task Scheduler Library' από το αριστερό παράθυρο του Task Scheduler.

Στο δεξιό τμήμα του παραθύρου, κάντε κλικ στο «Δημιουργία βασικής εργασίας…» για να ανοίξετε τον «Οδηγό δημιουργίας βασικής εργασίας».

Εισαγάγετε ένα όνομα και περιγραφή εργασίας. Στη συνέχεια, πατήστε «Επόμενο».

Επιλέξτε «Καθημερινά» ως τύπο σκανδάλης (παρόλο που θέλετε να το εκτελείτε ανά ώρα, αυτό σας επιτρέπει να ορίσετε ένα διάστημα επανάληψης). Στη συνέχεια, κάντε κλικ στο «Επόμενο».

Καθορίστε την ημερομηνία και την ώρα έναρξης για την εργασία δημιουργίας αντιγράφων ασφαλείας.

Επιλέξτε 'Επανάληψη εργασίας κάθε:' και ρυθμίστε το σε 1 ώρα.

Ρυθμίστε τη διάρκεια σε '1 ημέρα'. Στη συνέχεια, κάντε κλικ στο «Επόμενο».

Επιλέξτε «Έναρξη προγράμματος» και μετά πατήστε «Επόμενο».

Περιηγηθείτε και επιλέξτε το εκτελέσιμο Python (python.exe) κάνοντας κλικ στο «Αναζήτηση».

Περιηγηθείτε και επιλέξτε το εκτελέσιμο Python (python.exe) κάνοντας κλικ στο «Αναζήτηση».

Εισαγάγετε την πλήρη διαδρομή προς το σενάριο Python σας (π.χ. C:\path\to\mysql_backup.py) στο πεδίο 'Προσθήκη ορισμάτων'.

Εισαγάγετε τον κατάλογο που περιέχει το σενάριο Python (π.χ. C:\path\to\) στο πεδίο 'Έναρξη σε (προαιρετικό)'.

Κάντε κλικ στο «Επόμενο».

Ελέγξτε τις ρυθμίσεις εργασίας και κάντε κλικ στο «Τέλος» για να δημιουργήσετε την εργασία.

συμπέρασμα

Μπορούμε να δημιουργήσουμε αξιόπιστα και αποτελεσματικά σενάρια αυτοματισμού που μειώνουν το χρόνο των ροών εργασίας και τον αφιερώνουν σε πιο σημαντικές δραστηριότητες, χρησιμοποιώντας τα εργαλεία της Python και τις βέλτιστες πρακτικές της. Παρέχουμε μερικά παραδείγματα που σίγουρα θα σας βοηθήσουν να αυτοματοποιήσετε τις εργασίες σας χρησιμοποιώντας σενάρια Python.