Cara Mengotomatiskan Tugas dengan Skrip Python

Cara Mengotomatiskan Tugas Dengan Skrip Python



Pemrogram, pembuat kode, dan pengembang dapat mengotomatiskan metode menggunakan skrip Python, sehingga menghemat waktu dan tenaga dengan melakukan operasi berulang. Python adalah bahasa komputer, seperti Java, yang bekerja dengan baik dalam otomatisasi proses. Dibandingkan dengan bahasa lain, bahasa ini relatif mudah dipelajari. Ia juga memiliki komunitas yang besar dan dinamis serta perpustakaan bawaan untuk mengotomatiskan tugas-tugas tertentu.

Menginstal Python

Sebelum Anda mulai mengotomatiskan tugas, instal Python di komputer atau sistem. Untuk menginstal Python, Anda harus mengunjungi situs resmi Python terlebih dahulu. Pastikan untuk menambahkan Python ke PATH sistem selama instalasi.







  1. Pilih IDE atau Editor Teks

Editor teks apa pun dapat digunakan untuk membuat skrip Python. Namun, Lingkungan Pengembangan Terpadu (IDE), termasuk PyCharm, Visual Studio Code, atau Jupyter Notebook, dapat meningkatkan proses dengan alat seperti penyorotan sintaksis dan proses debug. Namun, kami menggunakan Notepad++ dalam artikel ini.



  1. Tentukan Tugas yang Perlu Diotomatisasi

Ini bisa melibatkan apa saja mulai dari mengirim email massal, membuat laporan, mengunduh file, dan membuat cadangan.



  1. Teliti Perpustakaan dan Fungsinya

Lihatlah fungsi dan pustaka yang dapat mengotomatiskan subtugas.





  1. Tulis Skrip dengan Python

Di sinilah kami mengumpulkan semua bagian untuk membuat skrip kerja yang lengkap.

  1. Tugas

Otomatiskan pembuatan laporan dari data yang disimpan dalam spreadsheet.



  1. Skrip Python

Kita dapat menggunakan skrip Python untuk membaca data dari spreadsheet dan menghasilkan laporan dalam berbagai format seperti PDF, HTML, atau CSV. Selain itu, skrip dapat digunakan untuk mendistribusikan laporan secara otomatis kepada pemangku kepentingan melalui email atau Slack.

Dibutuhkan beberapa langkah untuk membuat laporan menggunakan data spreadsheet. Kami akan memberi Anda skrip Python sederhana yang menggunakan perpustakaan Pandas untuk membaca data dari spreadsheet Excel dan membuat laporan CSV. Ingatlah bahwa kami dapat mengembangkan skrip ini untuk menghasilkan laporan yang lebih rumit dalam format lain dan mengotomatiskan email atau notifikasi Slack sesuai kebutuhan.

Instal Perpustakaan yang Diperlukan

Sebelum menjalankan skrip, kita perlu menginstal perpustakaan Pandas jika belum diinstal:

pip Install panda openpyxl

Kode Python memiliki fungsi bernama generate_report() yang mengambil dua argumen: jalur ke spreadsheet Excel yang berisi data gaji karyawan dan jalur ke file CSV tempat laporan harus disimpan.

Fungsi ini pertama-tama membaca spreadsheet Excel menjadi objek Pandas DataFrame. Kemudian, ia melakukan pemrosesan dan analisis data sesuai kebutuhan. Jumlah kolom “Gaji” dihitung dalam contoh ini oleh fungsi.

Selanjutnya, fungsi tersebut membuat string laporan yang berisi total gaji seluruh karyawan. Terakhir, fungsi menyimpan laporan ke file CSV.

Fungsi utama kode menentukan file input Excel dan file laporan output dan kemudian memanggil fungsi generate_report() untuk membuat laporan.

GenReport.py:
impor panda sebagai pd_obj
def menghasilkan_laporan ( emp_salary_data, emp_salary_report_file ) :
mencoba:
# Baca data dari spreadsheet Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Melakukan pengolahan dan analisis data sesuai kebutuhan
# Untuk mempermudah, asumsikan kita ingin menghitung jumlah kolom
gaji_total = df_obj [ 'Gaji' ] .jumlah ( )
# Buat laporan
gaji_laporan = f 'Total Gaji Seluruh Karyawan: {salary_total}'
# Simpan laporan ke file CSV
dengan terbuka ( emp_salary_report_file, 'Di dalam' ) sebagai csv_obj:
csv_obj.tulis ( gaji_laporan )

mencetak ( F 'Laporan dibuat dan disimpan ke {emp_salary_report_file}' )
kecuali Pengecualian sebagai mantan:
mencetak ( F 'Terjadi kesalahan: {str(e)}' )
jika __nama__ == '__utama__' :
# Tentukan file input Excel dan file laporan output
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'gaji_jumlah.csv'
# Panggil fungsi generate_report untuk membuat laporan
menghasilkan_laporan ( emp_salary_data, emp_salary_report_file )

Berikut data pada file input pegawai:

Uji Skripnya

Kita harus menguji skrip secara ekstensif setelah ditulis untuk memastikan bahwa skrip berfungsi sebagaimana mestinya. Kami menggunakan kompiler Python untuk menguji file yang kami otomatisasi. Dalam hal ini, file ini berhasil membuat dan menyimpan laporan dalam file CSV.

Jadwalkan atau Picu Skrip

Bergantung pada persyaratan otomatisasi, kami dapat menjalankan skrip Python dengan berbagai cara:

  • Eksekusi Manual: Jalankan skrip secara manual dengan menjalankannya di IDE atau melalui baris perintah menggunakan perintah berikut: python Hasilkan Laporan.py .
  • Tugas Terjadwal (Windows): Kita dapat menjalankan skrip pada waktu atau interval tertentu menggunakan Windows Task Scheduler. Menggunakan Layanan Windows, kita juga dapat memanggil peristiwa tertentu.
  • Pekerjaan Cron (Linux/macOS): Kita dapat menggunakan tugas cron untuk menjadwalkan skrip agar dijalankan pada waktu tertentu di sistem mirip Unix.
  • Berbasis Peristiwa: Kami dapat memicu skrip Anda sebagai respons terhadap peristiwa tertentu, seperti perubahan file, menggunakan perpustakaan seperti pengawas, atau dengan mengintegrasikan dengan webhook.

Mengotomatiskan Pencadangan MySQL Menggunakan Python

Untuk mengotomatiskan proses pencadangan server MySQL dengan jadwal per jam, kita dapat menggunakan Python yang dikombinasikan dengan pustaka “mysqlclient” untuk terhubung ke database MySQL dan membuat cadangan, dan kita dapat menggunakan penjadwal tugas seperti Cron (pada berbasis Unix sistem) untuk menjalankan skrip Python dengan interval setiap jam. Berikut ini adalah skrip Python yang dapat Anda gunakan untuk tujuan ini:

Langkah 1: Instal Perpustakaan yang Diperlukan

Kita perlu menginstal perpustakaan “mysqlclient” untuk konektivitas MySQL. Kita dapat menginstalnya menggunakan pip:

pip Install klien mysql

pip Install configparser

Langkah 2: Buat File Konfigurasi

Buat file teks (misalnya, mysqlconfig.ini) untuk menyimpan informasi koneksi MySQL Anda, termasuk kata sandinya. Berikut ini contoh tampilan file “mysqlconfig.ini”:

[ mysql ]
mySQL_DB_HOST = host lokal
mySQL_DB_USERNAME = akar
mySQL_DB_PASSWORD = 1234
mySQL_DB_DATABASE_NAME = merekw9_data

Langkah 3: Verifikasi Direktori Bin MySQL :

Perintah “mysqldump” harus ditempatkan di direktori bin MySQL. Verifikasi bahwa PATH sistem menyertakan direktori bin. Kita dapat memodifikasi variabel lingkungan PATH untuk memasukkan lokasi bin MySQL.

Di Windows: Kita dapat mengedit PATH sistem dengan menjelajahi “Variabel Lingkungan” di menu “Start” dan menambahkan direktori bin MySQL (misalnya, C:\Program Files\MySQL\MySQL Server X.X\bin) ke variabel PATH.

Langkah 3: Tulis Skrip Python

Buat skrip Python, misalnya MySQLBackup.py, untuk mengotomatiskan proses pencadangan MySQL. Ganti placeholder dengan detail koneksi database dan jalur file sesuai kebutuhan.

subproses impor sebagai sp
dari tanggal waktu impor tanggal waktu sebagai dt_obj
impor configparser sebagai mysql_confg
# Detail koneksi database MySQL
# Muat detail koneksi MySQL dari file konfigurasi
config_obj = mysql_confg.ConfigParser ( )
config_obj.baca ( 'mysqlconfig.ini' ) # Sesuaikan jalur jika diperlukan
mySQL_DB_HOST = config_obj.get ( 'mysql' , 'mySQL_DB_HOST' )
mySQL_DB_USERNAME = config_obj.get ( 'mysql' , 'SQL_DB_USERNAME saya' )
mySQL_DB_PASSWORD = config_obj.get ( 'mysql' , 'SQL_DB_PASSWORD saya' )
mySQL_DB_DATABASE_NAME = config_obj.get ( 'mysql' , 'SQL_DB_DATABASE_NAME saya' )
# Direktori cadangan
bk_dir = 'direktori_cadangan/'
# Dapatkan tanggal dan waktu saat ini untuk nama file cadangan
cap waktu = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Tentukan nama file cadangan
my_sql_bk = f 'cadangan_{timestamp_oj}.sql'
# Perintah pembuangan 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}'

mencoba:
# Jalankan perintah dump MySQL untuk membuat cadangan
sp.menjalankan ( mysql_dump_cmd, kerang =Benar, memeriksa = Benar )
mencetak ( F 'Pencadangan selesai dan disimpan sebagai '{my_sql_bk}' di '{bk_dir}'' )
kecuali sp.CalledProcessError sebagai Dia:
mencetak ( F 'Kesalahan saat membuat cadangan: {str(e)}' )

Langkah 4: Uji dan Jalankan Kode

Langkah 5: Jadwalkan Skrip dengan Penjadwal Tugas Windows

Sekarang, mari jadwalkan skrip Python agar berjalan secara otomatis menggunakan Penjadwal Tugas Windows:

Luncurkan Penjadwal Tugas Windows dengan mengetikkan “Task Scheduler” ke dalam bilah pencarian menu “Start” atau dengan mengetik “taskschd.msc” ke dalam kotak dialog “Run” (Win + R).

Pilih “Perpustakaan Penjadwal Tugas” dari panel kiri Penjadwal Tugas.

Di panel kanan, klik “Create Basic Task…” untuk membuka “Create Basic Task Wizard”.

Masukkan nama dan deskripsi tugas. Kemudian, tekan 'Berikutnya'.

Pilih “Harian” sebagai jenis pemicu (walaupun Anda ingin menjalankannya setiap jam, ini memungkinkan Anda menyetel interval pengulangan). Kemudian, klik 'Selanjutnya'.

Tentukan tanggal dan waktu mulai untuk tugas pencadangan.

Pilih “Ulangi tugas setiap:” dan setel ke 1 jam.

Atur durasinya menjadi “1 hari”. Kemudian, klik 'Selanjutnya'.

Pilih 'Mulai program' lalu tekan 'Berikutnya'.

Telusuri dan pilih Python yang dapat dieksekusi (python.exe) dengan mengklik 'Jelajahi'.

Telusuri dan pilih Python yang dapat dieksekusi (python.exe) dengan mengklik 'Jelajahi'.

Masukkan path lengkap ke skrip Python Anda (misalnya, C:\path\to\mysql_backup.py) di bidang “Tambahkan argumen”.

Masukkan direktori yang berisi skrip Python Anda (misalnya, C:\path\to\) di bidang “Mulai di (opsional)”.

Klik pada “Selanjutnya.”

Tinjau pengaturan tugas dan klik “Selesai” untuk membuat tugas.

Kesimpulan

Kita dapat membuat skrip otomatisasi yang andal dan efektif yang mempersingkat waktu alur kerja dan mencurahkannya untuk aktivitas yang lebih penting dengan memanfaatkan alat Python dan praktik terbaiknya. Kami memberikan beberapa contoh yang pasti akan membantu Anda mengotomatiskan tugas Anda menggunakan skrip Python.