Cách tự động hóa các tác vụ bằng tập lệnh Python

Cach Tu Dong Hoa Cac Tac Vu Bang Tap Lenh Python



Các lập trình viên, lập trình viên và nhà phát triển có thể tự động hóa các phương thức bằng cách sử dụng tập lệnh Python, giúp họ tiết kiệm thời gian và công sức bằng cách thực hiện các thao tác lặp đi lặp lại. Python là một ngôn ngữ máy tính, giống như Java, hoạt động tốt trong tự động hóa quy trình. So với các ngôn ngữ khác, nó tương đối dễ học. Nó cũng có một cộng đồng rộng lớn, sôi động và các thư viện tích hợp để tự động hóa các tác vụ cụ thể.

Cài đặt Python

Trước khi bạn bắt đầu tự động hóa các tác vụ, hãy cài đặt Python trên máy tính hoặc hệ thống. Để cài đặt Python, trước tiên bạn phải truy cập trang web chính thức của Python. Đảm bảo thêm Python vào PATH của hệ thống trong khi cài đặt.







  1. Chọn IDE hoặc Trình soạn thảo văn bản

Bất kỳ trình soạn thảo văn bản nào cũng có thể được sử dụng để xây dựng các tập lệnh Python. Tuy nhiên, Môi trường phát triển tích hợp (IDE), bao gồm PyCharm, Visual Studio Code hoặc Jupyter Notebook, có thể cải thiện quy trình bằng các công cụ như đánh dấu cú pháp và gỡ lỗi. Tuy nhiên, chúng tôi đang sử dụng Notepad++ trong bài viết này.



  1. Xác định nhiệm vụ cần được tự động hóa

Điều này có thể liên quan đến mọi việc từ gửi email hàng loạt, tạo báo cáo, tải xuống tệp và tạo bản sao lưu.



  1. Nghiên cứu thư viện và chức năng

Xem xét các chức năng và thư viện có thể tự động hóa các nhiệm vụ con.





  1. Viết tập lệnh bằng Python

Đây là nơi chúng tôi tập hợp tất cả các phần để tạo thành một kịch bản hoạt động hoàn chỉnh.

  1. Nhiệm vụ

Tự động hóa việc tạo báo cáo từ dữ liệu được lưu trữ trong bảng tính.



  1. Tập lệnh Python

Chúng ta có thể sử dụng tập lệnh Python để đọc dữ liệu từ bảng tính và tạo báo cáo ở nhiều định dạng khác nhau như PDF, HTML hoặc CSV. Ngoài ra, tập lệnh có thể được sử dụng để tự động phân phối báo cáo cho các bên liên quan thông qua email hoặc Slack.

Phải mất nhiều bước để tạo báo cáo bằng cách sử dụng dữ liệu bảng tính. Chúng tôi sẽ cung cấp cho bạn tập lệnh Python đơn giản sử dụng thư viện Pandas để đọc dữ liệu từ bảng tính Excel và tạo báo cáo CSV. Hãy nhớ rằng chúng tôi có thể xây dựng dựa trên tập lệnh này để tạo ra các báo cáo phức tạp hơn ở các định dạng khác và tự động hóa email hoặc thông báo Slack theo yêu cầu.

Cài đặt các thư viện cần thiết

Trước khi chạy tập lệnh, chúng ta cần cài đặt thư viện Pandas nếu nó chưa được cài đặt:

pip cài đặt gấu trúc openpyxl

Mã Python có một hàm gọi là generate_report(), hàm này nhận hai đối số: đường dẫn đến bảng tính Excel chứa dữ liệu lương của nhân viên và đường dẫn đến tệp CSV nơi lưu báo cáo.

Đầu tiên, hàm này đọc bảng tính Excel vào đối tượng Pandas DataFrame. Sau đó, nó thực hiện xử lý và phân tích dữ liệu khi cần thiết. Tổng của cột “Mức lương” được tính trong trường hợp này bằng hàm.

Tiếp theo, hàm tạo một chuỗi báo cáo chứa tổng lương của tất cả nhân viên. Cuối cùng, chức năng lưu báo cáo vào tệp CSV.

Hàm chính của mã chỉ định tệp Excel đầu vào và tệp báo cáo đầu ra, sau đó gọi hàm generate_report() để tạo báo cáo.

GenReport.py:
nhập khẩu gấu trúc BẰNG pd_obj
def tạo_report ( emp_salary_data, emp_salary_report_file ) :
thử:
# Đọc dữ liệu từ bảng tính Excel
df_obj = pd_obj.read_excel ( emp_salary_data )
# Thực hiện xử lý và phân tích dữ liệu khi cần thiết
# Để đơn giản, giả sử chúng ta muốn tính tổng của một cột
lương_total = df_obj [ 'Lương' ] .Tổng ( )
#Tạo báo cáo
lương_báo cáo = f 'Tổng số tiền lương của tất cả nhân viên: {salary_total}'
# Lưu báo cáo vào tệp CSV
với mở ( emp_salary_report_file, 'TRONG' ) BẰNG csv_obj:
csv_obj.write ( báo cáo lương )

in ( f 'Báo cáo được tạo và lưu vào {emp_salary_report_file}' )
ngoại trừ ngoại lệ BẰNG bán tại:
in ( f 'Đã xảy ra lỗi: {str(e)}' )
nếu như __tên__ == '__chủ yếu__' :
# Chỉ định file Excel đầu vào và file báo cáo đầu ra
emp_salary_data = 'input_employee_data.xlsx'
emp_salary_report_file = 'lương_sum.csv'
# Gọi hàm generate_report để tạo báo cáo
tạo_báo cáo ( emp_salary_data, emp_salary_report_file )

Đây là dữ liệu trong tệp nhân viên đầu vào:

Kiểm tra tập lệnh

Chúng tôi phải kiểm tra rộng rãi tập lệnh sau khi nó được viết để đảm bảo rằng nó hoạt động như dự định. Chúng tôi sử dụng trình biên dịch Python để kiểm tra tệp mà chúng tôi tự động hóa. Trong trường hợp này, tệp này tạo và lưu trữ thành công báo cáo trong tệp CSV.

Lên lịch hoặc kích hoạt tập lệnh

Tùy thuộc vào yêu cầu tự động hóa, chúng ta có thể thực thi tập lệnh Python theo nhiều cách khác nhau:

  • Thực hiện thủ công: Chạy tập lệnh theo cách thủ công bằng cách thực hiện tập lệnh trong IDE hoặc thông qua dòng lệnh bằng lệnh sau: python TạoReport.py .
  • Tác vụ theo lịch trình (Windows): Chúng tôi có thể chạy tập lệnh vào những thời điểm hoặc khoảng thời gian cụ thể bằng cách sử dụng Bộ lập lịch tác vụ Windows. Sử dụng Dịch vụ Windows, chúng ta cũng có thể gọi một sự kiện cụ thể.
  • Công việc định kỳ (Linux/macOS): Chúng ta có thể sử dụng các công việc định kỳ để lên lịch cho tập lệnh chạy vào những thời điểm cụ thể trên các hệ thống giống Unix.
  • Theo hướng sự kiện: Chúng tôi có thể kích hoạt tập lệnh của bạn để phản hồi các sự kiện cụ thể, chẳng hạn như thay đổi tệp, sử dụng các thư viện như cơ quan giám sát hoặc bằng cách tích hợp với webhook.

Tự động sao lưu MySQL bằng Python

Để tự động hóa quá trình sao lưu của máy chủ MySQL theo lịch trình hàng giờ, chúng ta có thể sử dụng Python kết hợp với thư viện “mysqlclient” để kết nối với cơ sở dữ liệu MySQL và tạo bản sao lưu, đồng thời chúng ta có thể sử dụng trình lập lịch tác vụ như Cron (trên nền tảng Unix). systems) để chạy tập lệnh Python theo từng giờ. Sau đây là tập lệnh Python mà bạn có thể sử dụng cho mục đích này:

Bước 1: Cài đặt các thư viện cần thiết

Chúng ta cần cài đặt thư viện “mysqlclient” để kết nối MySQL. Chúng ta có thể cài đặt nó bằng pip:

Pip cài đặt máy khách mysql

pip cài đặt trình phân tích cú pháp cấu hình

Bước 2: Tạo tệp cấu hình

Tạo một tệp văn bản (ví dụ: mysqlconfig.ini) để lưu trữ thông tin kết nối MySQL của bạn, bao gồm cả mật khẩu. Dưới đây là ví dụ về tệp “mysqlconfig.ini” có thể trông như thế nào:

[ mysql ]
mySQL_DB_HOST = máy chủ cục bộ
mySQL_DB_USERNAME = gốc
mySQL_DB_PASSWORD = 1234
mySQL_DB_DATABASE_NAME = Brandw9_data

Bước 3: Xác minh thư mục Bin MySQL :

Lệnh “mysqldump” phải được đặt trong thư mục bin của MySQL. Xác minh rằng PATH của hệ thống có chứa thư mục bin. Chúng ta có thể sửa đổi biến môi trường PATH để bao gồm vị trí thùng MySQL.

Trên Windows: Chúng tôi có thể chỉnh sửa PATH của hệ thống bằng cách khám phá “Biến môi trường” trong menu “Bắt đầu” và thêm thư mục bin MySQL (ví dụ: C:\Program Files\MySQL\MySQL Server X.X\bin) vào biến PATH.

Bước 3: Viết tập lệnh Python

Tạo tập lệnh Python, ví dụ: MySQLBackup.py, để tự động hóa quy trình sao lưu MySQL. Thay thế phần giữ chỗ bằng chi tiết kết nối cơ sở dữ liệu và đường dẫn tệp nếu cần.

nhập khẩu quy trình con BẰNG sp
từ ngày giờ nhập ngày giờ BẰNG dt_obj
nhập trình phân tích cấu hình BẰNG mysql_confg
# Chi tiết kết nối cơ sở dữ liệu MySQL
# Tải chi tiết kết nối MySQL từ tệp cấu hình
config_obj = mysql_confg.ConfigParser ( )
config_obj.read ( 'mysqlconfig.ini' ) # Điều chỉnh đường dẫn nếu cần
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' )
#Thư mục sao lưu
bk_dir = 'thư mục sao lưu/'
# Lấy ngày giờ hiện tại của tên tệp sao lưu
dấu thời gian = dt_obj.now ( ) .strftime ( '%Y%m%d%H%M%S' )
# Xác định tên file sao lưu
my_sql_bk = f 'backup_{timestamp_oj}.sql'
# Lệnh kết xuất 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}'

thử:
# Thực thi lệnh kết xuất MySQL để tạo bản sao lưu
sp.run ( mysql_dump_cmd, vỏ bọc = Đúng, kiểm tra = Đúng )
in ( f 'Sao lưu đã hoàn tất và được lưu dưới dạng '{my_sql_bk}' trong '{bk_dir}'' )
ngoại trừ sp.CalledProcessError BẰNG Nó là:
in ( f 'Lỗi tạo bản sao lưu: {str(e)}' )

Bước 4: Kiểm tra và thực thi mã

Bước 5: Lên lịch tập lệnh bằng Windows Task Scheduler

Bây giờ, hãy lên lịch để tập lệnh Python chạy tự động bằng Bộ lập lịch tác vụ Windows:

Khởi chạy Trình lập lịch tác vụ Windows bằng cách nhập “Trình lập lịch tác vụ” vào thanh tìm kiếm của menu “Bắt đầu” hoặc bằng cách nhập “taskchd.msc” vào hộp thoại “Chạy” (Win + R).

Chọn “Thư viện lập lịch tác vụ” từ khung bên trái của Trình lập lịch tác vụ.

Trong khung bên phải, nhấp vào “Tạo tác vụ cơ bản…” để mở “Trình hướng dẫn tác vụ cơ bản”.

Nhập tên nhiệm vụ và mô tả. Sau đó, nhấn “Tiếp theo”.

Chọn “Hàng ngày” làm loại trình kích hoạt (mặc dù bạn muốn chạy nó hàng giờ, điều này cho phép bạn đặt khoảng thời gian lặp lại). Sau đó, nhấp vào “Tiếp theo”.

Chỉ định ngày và giờ bắt đầu cho tác vụ sao lưu.

Chọn “Lặp lại nhiệm vụ mỗi:” và đặt thành 1 giờ.

Đặt thời lượng thành “1 ngày”. Sau đó, nhấp vào “Tiếp theo”.

Chọn “Bắt đầu một chương trình” và sau đó nhấn “Tiếp theo”.

Duyệt và chọn tệp thực thi Python (python.exe) bằng cách nhấp vào “Duyệt”.

Duyệt và chọn tệp thực thi Python (python.exe) bằng cách nhấp vào “Duyệt”.

Nhập đường dẫn đầy đủ đến tập lệnh Python của bạn (ví dụ: C:\path\to\mysql_backup.py) vào trường “Thêm đối số”.

Nhập thư mục chứa tập lệnh Python của bạn (ví dụ: C:\path\to\) vào trường “Bắt đầu (tùy chọn)”.

Nhấp vào “Tiếp theo”.

Xem lại cài đặt tác vụ và nhấp vào “Hoàn tất” để tạo tác vụ.

Phần kết luận

Chúng ta có thể xây dựng các tập lệnh tự động hóa đáng tin cậy và hiệu quả giúp cắt giảm thời gian của quy trình công việc và dành thời gian đó cho các hoạt động quan trọng hơn bằng cách sử dụng các công cụ của Python và các phương pháp hay nhất của nó. Chúng tôi đã cung cấp một số ví dụ chắc chắn sẽ giúp bạn tự động hóa các tác vụ của mình bằng cách sử dụng tập lệnh Python.