Skip to main content

Tự động hóa báo cáo với Python: Tạo báo cáo Markdown nhanh chóng

· 3 min read

1. Giới thiệu

Tự động hóa báo cáo giúp doanh nghiệp tiết kiệm thời gian, giảm thiểu sai sót, và nâng cao hiệu suất làm việc. Trong bài viết này, chúng ta sẽ sử dụng Python, Pandas, và Faker để tạo báo cáo dữ liệu tự động và xuất tệp Markdown.

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

Cài đặt các thư viện cần thiết trước khi bắt đầu:

pip install pandas numpy faker

3. Tạo dữ liệu giả lập

Dưới đây là mã Python tạo dữ liệu giả lập với FakerNumPy:

import pandas as pd
import numpy as np
from faker import Faker

# Khởi tạo Faker
fake = Faker()
np.random.seed(42)

# Danh sách sản phẩm và danh mục
products = ['Product A', 'Product B', 'Product C', 'Product D', 'Product E']
categories = ['Category 1', 'Category 2', 'Category 3']

# Tạo dữ liệu giả
data = {
'Date': [fake.date_this_year() for _ in range(1000)],
'Product': np.random.choice(products, 1000),
'Sales': np.random.randint(50, 500, 1000),
'Region': [fake.city() for _ in range(1000)],
'Category': np.random.choice(categories, 1000),
'CustomerID': [fake.uuid4() for _ in range(1000)],
'Quantity': np.random.randint(1, 20, 1000),
'Discount': np.random.uniform(0, 0.3, 1000),
'Profit': np.random.uniform(10, 200, 1000),
'Cost': np.random.uniform(5, 100, 1000),
}

# Tạo DataFrame
df = pd.DataFrame(data)

# Lưu DataFrame vào tệp CSV
df.to_csv('demo_data.csv', index=False)
print("Bộ dữ liệu demo đã được tạo và lưu vào 'demo_data.csv'")

4. Xuất báo cáo tự động dưới dạng Markdown

Sau khi tạo dữ liệu, ta xuất báo cáo dưới dạng tệp Markdown:

def generate_markdown_report(df, filename="report.md"):
with open(filename, "w") as f:
f.write("# Báo cáo Kinh Doanh\n\n")
f.write("## Tổng Quan\n")
f.write(f"- Tổng doanh thu: {df['Sales'].sum()}\n")
f.write(f"- Tổng lợi nhuận: {df['Profit'].sum()}\n")
f.write(f"- Tổng số giao dịch: {len(df)}\n\n")

f.write("## Doanh thu theo sản phẩm\n")
sales_by_product = df.groupby("Product")["Sales"].sum()
for product, sales in sales_by_product.items():
f.write(f"- {product}: {sales}\n")

print(f"Báo cáo đã được lưu tại {filename}")

generate_markdown_report(df)

Sau khi chạy, tệp report.md sẽ được tạo chứa thông tin báo cáo doanh thu.

5. Lập lịch tự động chạy báo cáo

Chúng ta có thể tự động chạy script Python hàng ngày bằng Cron Job (Linux) hoặc Task Scheduler (Windows):

🔹 Với Cron Job (Linux): Thêm vào crontab -e

0 8 * * * /usr/bin/python3 /path/to/script.py

🔹 Với Task Scheduler (Windows):

  • Tạo "Basic Task" > "Start a Program"
  • Chọn file python.exe và tham số /path/to/script.py

6. Kết luận

Bằng cách sử dụng Python và Markdown, ta có thể tự động hóa báo cáo kinh doanh nhanh chóng. Việc lập lịch tự động giúp duy trì tính nhất quán và hiệu suất cao hơn.

Bạn có muốn tích hợp thêm báo cáo dạng HTML hoặc Excel không? Hãy để lại bình luận nhé! 🚀