Menu

Tự động hóa trích xuất thông tin từ file Word sang Excel bằng Python

Lỗ Thành Ni 10/06/2026 23:37 554 lượt xem 2 trả lời

Chào mọi người,

Dạo này mình có một dự án cần xử lý khá nhiều tài liệu Word, và việc copy-paste thủ công từng chút một thực sự tốn thời gian. Tình cờ mình tìm hiểu và phát hiện ra có thể dùng Python để tự động hóa việc này. Hôm nay mình muốn chia sẻ lại với mọi người cách trích xuất thông tin từ file Word và đưa vào Excel một cách nhanh chóng.

Giả sử mình có một loạt các báo cáo tuần được lưu dưới dạng file .docx, và trong mỗi file có các mục thông tin cố định như: Tên nhân viên, Số giờ làm, Dự án đã thực hiện. Mình muốn gom tất cả những thông tin này vào một file Excel duy nhất để dễ dàng tổng hợp và phân tích.

Để làm được điều này, chúng ta cần cài đặt thư viện python-docx để đọc file Word và thư viện pandas để thao tác với dữ liệu và xuất ra Excel.

pip install python-docx pandas

Sau đó, mình sẽ viết một đoạn script Python đơn giản để:

  • Tìm tất cả các file .docx trong một thư mục chỉ định.
  • Mở từng file, tìm và trích xuất các thông tin cần thiết (ví dụ: tìm các đoạn văn bản chứa từ khóa như 'Tên nhân viên:', 'Số giờ làm:', v.v.).
  • Lưu các thông tin đã trích xuất vào một cấu trúc dữ liệu (ví dụ: list các dictionary).
  • Cuối cùng, sử dụng pandas để tạo một DataFrame và xuất ra file .xlsx.

Cách này giúp mình tiết kiệm được hàng giờ đồng hồ, đặc biệt khi có hàng chục, thậm chí hàng trăm file cần xử lý. Nếu bạn nào cũng đang gặp vấn đề tương tự với việc xử lý văn bản Word hoặc các định dạng file khác, có thể thử áp dụng Python nhé. Nó thực sự mở ra rất nhiều khả năng tự động hóa thú vị!

Có ai đã từng thử cách này hoặc có phương pháp nào khác hiệu quả hơn không, chia sẻ cho mình biết với!

3

Hay quá bạn ơi! Mình cũng đang "vật lộn" với đống file Word tương tự.

Mình có một thắc mắc nhỏ, không biết là với các thông tin trong Word không có cấu trúc cố định lắm, ví dụ như các đoạn văn bản tự do, thì Python có thể "nhận diện" và trích xuất được không? Hay cách này chỉ áp dụng hiệu quả với những trường hợp có "khuôn mẫu" rõ ràng như bạn mô tả?

Rất mong nhận được chia sẻ thêm từ bạn!

3

Cảm ơn bạn đã đặt câu hỏi rất hay! Đúng là với các đoạn văn bản tự do, việc trích xuất thông tin sẽ phức tạp hơn nhiều.

Cách mình chia sẻ ở trên phù hợp nhất khi các thông tin bạn cần nằm ở những vị trí cố định hoặc có các từ khóa nhận diện rõ ràng trong file Word. Nếu thông tin nằm rải rác và không theo một cấu trúc nhất định, có thể bạn sẽ cần kết hợp thêm các kỹ thuật xử lý ngôn ngữ tự nhiên (NLP) của Python, hoặc dùng các phương pháp dò tìm ký tự, biểu thức chính quy (regex) để "bắt" thông tin. Tuy nhiên, những cách này thường đòi hỏi nhiều công sức và độ chính xác có thể không cao bằng trường hợp có cấu trúc.

Bạn có thể chia sẻ thêm về ví dụ cụ thể của các đoạn văn bản tự do mà bạn đang gặp không? Biết đâu chúng ta có thể cùng nghĩ ra hướng giải quyết!

4

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký