Εργασία με το DOC Reader

Εργασία με το DOC Reader

Aspose.Words FOSS for Python includes a dedicated reader for legacy Word 97-2003 .doc Τα αρχεία. DocFileReader Η κατηγορία αναλύει τη δυαδική μορφή OLE2 και παράγει ένα μοντέλο ελαφρού εγγράφου (LDM) που μπορεί να χειριστεί ή μετατραπεί σε άλλες μορφές.


Εισάγετε αρχείο DOC

Χρήση: DocFileReader για να ανοίξει ένα .doc αρχείο από δίσκο και να το μετατρέψετε σε ένα Document:

import aspose.words_foss as aw

doc = aw.Document("report.doc")
print(f"Paragraphs: {len(doc.all_paragraphs)}")

Η Document εκπροσώπους κατασκευαστή για την create_reader(), η οποία επιλέγει: DocFileReader αυτόματα με βάση το .doc - Επεκτάσεις.


Χρησιμοποιώντας απευθείας το DocFileReaderCore

Για τον έλεγχο χαμηλότερου επιπέδου, εκτοπίστε το: DocFileReaderCore και καλεί τις μεθόδους φορτίου:

from aspose.words_foss.doc_reader.doc_file_reader_core import DocFileReaderCore

reader = DocFileReaderCore()
reader.load_file("legacy.doc")

DocFileReaderCore παρέχει τρεις μεθόδους εισόδου:

ΜέθοδοςΤύπος εισόδουΧρήση περίπτωση
load_file(filepath)Διάδρομος αρχείου:Διαβάστε από δίσκο .
load_stream(stream)Αντικείμενο τύπου αρχείουΔιαβάστε από την αποστολή ή το ρεύμα δικτύου
load_bytes(data)bytesΔιαβάστε από το μπουφέ της ενδομνήμης .

Κατασκευή του μοντέλου Light Document

Μετά την φόρτωση, καλέστε το to_light_document() στις: DocFileReader για την παραγωγή LDM. Document:

from aspose.words_foss.doc_reader.doc_file_reader import DocFileReader

reader = DocFileReader()
reader.load_file("input.doc")
ldm_doc = reader.to_light_document()

Η LDM είναι η εσωτερική αναπαράσταση που μοιράζεται μεταξύ όλων των αναγνωστών (DocFileReader, DocumentReader, TextFileReader) Μόλις έχετε ένα έγγραφο LDM, μπορείτε να το αποθηκεύσετε σε οποιαδήποτε υποστηριζόμενη μορφή εξόδου.


Το πρωτόκολλο DocumentFormatReader

Όλες οι αναγνώστες εφαρμόζουν το DocumentFormatReader πρωτόκολλο, το οποίο ορίζει την κοινή διεπαφή: load_file(), load_stream(), και load_bytes().- Το . create_reader() Η λειτουργία factory επιστρέφει το κατάλληλο αναγνώστη βάσει της επέκτασης αρχείου:

from aspose.words_foss.reader_factory import create_reader

reader = create_reader("data.doc")  # returns DocFileReader
reader.load_file("data.doc")

Συμβουλές και Καλύτερες Πρακτικές

  • Χρησιμοποιήστε το υψηλό επίπεδο Document("file.doc") χειρίζεται αυτόματα την επιλογή του αναγνώστη.
  • Χρήση: DocFileReaderCore Μόνο όταν χρειάζεστε άμεση πρόσβαση στο διπλό επίπεδο ανάλυσης.
  • Για τα αρχεία που λαμβάνονται ως: bytes (π.χ., από HTTP uploads), προτιμούν load_bytes() για να αποφύγουμε τη συγγραφή προσωρινών αρχείων.
  • Ο αναγνώστης DOC υποστηρίζει την ίδια πιστότητα επιστροφής-επιστροπής με τον αναγεννήτη DODX για κείμενο, παραγράφους και βασική μορφοποίηση.

Κοινά ζητήματα

ΕπισκόπησηΑιτίαΕπανόρθωση
load_file() αυξήσεις FileNotFoundErrorΛάθος διαδρομή αρχείουΕπαλήθευσε ότι υπάρχει η διαδρομή πριν καλέσεις .
Διαστρεβλωμένο κείμενο μετά την φόρτωσηΤο αρχείο δεν είναι έγκυρο δυαδικό OLE2 .Επιβεβαιώστε ότι το αρχείο είναι γνήσιο. .doc Σχήμα, όχι μετονομάζεται σε: .docx
Λείπει μορφοποίηση στην έξοδοΟρισμένες προηγμένες λειτουργίες DOC δεν υποστηρίζονται ακόμαΤσεκ. limitations.md για μη υποστηριζόμενα χαρακτηριστικά

FAQ

Ποια είναι η διαφορά μεταξύ του DocFileReader και του docFireReaterCore;?

DocFileReaderCore χειρίζεται τη διπλή ανάλυση χαμηλού επιπέδου του μορφότυπου OLE2. DocFileReader Επεκτείνεται προσθέτοντας το to_light_document() μέθοδος που παράγει πλήρη LDM. Document κατάλληλη για μετατροπή.

Μπορώ να φορτώσω ένα αρχείο DOC από μια ροή;?

Ναι, χρησιμοποιήστε. DocFileReaderCore.load_stream(stream) Αυτό είναι χρήσιμο για εφαρμογές του διαδικτύου όπου τα αρχεία ανεβάζονται ως streams.

Το πρόγραμμα ανάγνωσης DOC χειρίζεται αρχεία που προστατεύονται με κωδικό πρόσβασης;?

Προστατευμένο από κωδικό πρόσβασης .doc Το πρόγραμμα ανάγνωσης θα εγείρει μια εξαίρεση εάν το αρχείο είναι κρυπτογραφημένο.


Συνοπτική αναφορά API

Τάξη / ΜέθοδοςΠεριγραφή:
DocFileReaderΠλήρης αναγνώστης DOC με δυνατότητα κατασκευής LDM
DocFileReader.to_light_document()Μετατρέπει τα ανιχνευμένα δεδομένα DOC σε έγγραφο LDM
DocFileReaderCoreΔιαβαστής πυρήνα για τα δυαδικά αρχεία Word 97-2003 (.doc)
DocFileReaderCore.load_file(filepath)Εγκατάσταση αρχείου DOC από μια διαδρομή .
DocFileReaderCore.load_stream(stream)Εισάγετε ένα αρχείο DOC από μια ροή
DocFileReaderCore.load_bytes(data)Εγκατάσταση αρχείου DOC από ένα αποθηκευτικό στοιχείο bytes
DocumentFormatReaderΔιασύνδεση πρωτοκόλλου για όλους τους αναγνώστες εγγράφων
create_reader(path)Εργοστάσιο που επιστρέφει το σωστό αναγνώστη για μια επέκταση αρχείου
 Ελληνικά