Python-docx thêm bảng vào đoạn văn
Pedroski55 Bài đăng. 543 Chủ đề. 123 Đã tham gia. Tháng 7 năm 2017 Danh tiếng. 17 28-Aug-2022, 03. 32 AM (Bài đăng này đã được sửa đổi lần cuối. 28-08-2022, 10. 15 giờ chiều bởi Pedroski55. )Tôi đã thực hiện một chức năng đơn giản để lấy văn bản từ. tập tin docx. Hoạt động tốt import docx def getText(filename): print(len(doc.paragraphs)) doc = docx.Document(filename) fullText = [] for para in doc.paragraphs: fullText.append(para.text) return '\n'.join(fullText) myfile = input('Enter the full path to the file you want .. ') text = getText(myfile)Điều này chỉ nhận được văn bản đứng tự do, không phải văn bản trong khung hoặc bảng Hồi đáp Tìm thấy Hồi đáp Pedroski55 Bài đăng. 543 Chủ đề. 123 Đã tham gia. Tháng 7 năm 2017 Danh tiếng. 17 28-08-2022, 10. 18 giờ chiềuTôi đã tìm thấy một mô-đun docx2txt khác mà mô-đun này nói cũng có thể lấy văn bản từ các bảng Hồi đáp Tìm thấy Hồi đáp trưởng khoa Bài đăng. 4.495 Chủ đề. 16 Đã tham gia. Tháng 2 năm 2020 Danh tiếng. 263 29-Aug-2022, 01. 20 AM (Bài đăng này đã được sửa đổi lần cuối. 29-08-2022, 01. 20 giờ sáng bởi deanhystad. )Điều này tìm thấy các bảng trong một tài liệu và chuyển đổi chúng thành các khung dữ liệu from docx import Document from docx.document import Document as _Document from docx.oxml.table import CT_Tbl from docx.table import _Cell, Table import pandas as pd def tables(parent): if isinstance(parent, _Document): element = parent.element.body elif isinstance(parent, _Cell): element = parent._tc for child in element.iterchildren(): if isinstance(child, CT_Tbl): table = Table(child, parent) data = [[cell.text for cell in row.cells] for row in table.rows] yield pd.DataFrame(data[1:], columns=data[0]) for table in tables(Document('data.docx')): print(table, "\n")Tôi đã tạo một tài liệu từ có nhiều đoạn văn và hai bảng. Đầu ra từ việc chạy chương trình hiển thị chính xác hai bảng
Pedroski55 thích bài này Hồi đáp Tìm thấy Hồi đáp Pedroski55 Bài đăng. 543 Chủ đề. 123 Đã tham gia. Tháng 7 năm 2017 Danh tiếng. 17 29-Aug-2022, 08. 30 giờ sángThanks Hồi đáp Tìm thấy Hồi đáp trưởng khoa Bài đăng. 4.495 Chủ đề. 16 Đã tham gia. Tháng 2 năm 2020 Danh tiếng. 263 29-08-2022, 03. 36 PM (Bài đăng này đã được sửa đổi lần cuối. 29-Aug-2022, 03. 36 CH bởi deanhystad. )Thư viện docx không có nhiều tài liệu, tôi nghĩ cũng không nên. Nếu bạn muốn biết về định dạng tệp docx, hãy đọc tài liệu của Microsoft. Tôi đã sao chép rất nhiều ví dụ của mình từ một vài bài đăng trên web. Nghĩ rằng phải có một cách dễ dàng hơn để phân tích thông tin tài liệu, tôi đã viết một chương trình nhỏ để mở tài liệu, sau đó sử dụng Python tương tác để xem tất cả các phần tài liệu. Xin lưu ý rằng Tài liệu có một thuộc tính "bảng" là danh sách tất cả các bảng trong tài liệu. Điều đó chắc chắn làm cho mọi thứ dễ dàng from docx import Document import pandas as pd for table in Document("test.docx").tables: data = [[cell.text for cell in row.cells] for row in table.rows] print(pd.DataFrame(data[1:], columns=data[0]), "\n") Hồi đáp Tìm thấy Hồi đáp Pedroski55 Bài đăng. 543 Chủ đề. 123 Đã tham gia. Tháng 7 năm 2017 Danh tiếng. 17 30-Aug-2022, 12. 57 giờ sángCảm ơn bạn về thông tin Hồi đáp Tìm thấy Hồi đáp Larz60+ Bài đăng. 11.543 Chủ đề. 443 Đã tham gia. Tháng 9 năm 2016 Danh tiếng. 444 30-Aug-2022, 11. 34 giờ sángPedroski55 Đã viết. Python có thể có trình phân tích cú pháp xmlFYI Python thực sự có một trình phân tích cú pháp XML Tìm kiếm tài liệu python https. // tài liệu. con trăn. org/3/library/index. html để xem có gói dựng sẵn không (bạn có thể sử dụng hộp tìm kiếm ở đầu trang này hoặc tìm kiếm chủ đề) Đối với XML, điều này sẽ cung cấp cho bạn. https. // tài liệu. con trăn. org/3/thư viện/xml. html Ngoài ra, nếu bạn đang tìm kiếm một gói python cụ thể theo chủ đề, hãy truy cập https. //pypi. org/ và tìm kiếm chủ đề đó Hoặc là. thực hiện tìm kiếm google. Ví dụ. "gói python phổ biến nhất cho XML" sau đó tìm kiếm tên gói PyPi (trên cùng cho XML là 'lxml') tại https. //pypi. tổ chức/ thí dụ. từ dòng lệnh cho lxml. https. //pypi. tổ chức/tìm kiếm/?q=lxml hoặc đơn giản là tìm kiếm chủ đề từ hộp tìm kiếm trang chủ pypi sử dụng bộ lọc để trau dồi danh sách Nếu có trang GitHub cho gói đã chọn, bạn có thể đến đó bằng cách nhấp vào Biểu tượng Trang chủ nếu không có thể hướng dẫn bạn đóng gói trang chủ (đối với lxml thì link là. https. //lxml. de/ ) Hồi đáp Tìm thấy Hồi đáp Pedroski55 Bài đăng. 543 Chủ đề. 123 Đã tham gia. Tháng 7 năm 2017 Danh tiếng. 17 30-Aug-2022, 10. 52 giờ chiềuThanks Hồi đáp Tìm thấy Hồi đáp Làm cách nào để đọc các bảng trong docx bằng python?Xử lý dữ liệu bảng thành pandas dataframe. Sử dụng các thuộc tính có sẵn của thư viện python-docx, đọc từng hàng của bảng và truy xuất văn bản từ từng ô và tạo danh sách python gồm danh sách chứa từng hàng. Then convert that python data structure to pandas DataFrame.
Làm cách nào để chỉnh sửa docx bằng python?Cách chỉnh sửa DOCX . Cài đặt Trình chỉnh sửa DOCX cho Python Thêm tham chiếu thư viện (nhập thư viện) vào dự án Python của bạn Mở DOCX bằng Python Chèn nội dung vào đầu tài liệu DOCX Gọi phương thức 'save()', chuyển tên của tệp đầu ra với phần mở rộng được yêu cầu Nhận kết quả đã chỉnh sửa |