Tento rychlý tutoriál obsahuje informace o tom, jak extrahovat všechny obrázky z dokumentu Word v Pythonu. Poskytuje všechny prostředky pro konfiguraci prostředí a zavádí důležité konstrukce API, které jsou nutné ke splnění úkolu, včetně názvů tříd, metod a vlastností. Můžete postupovat podle kroků a napsat kompletní program pro extrahování obrázků z dokumentu Word v pythonu, jako je extrahování obrázků ze souboru DOCX a jeho uložení jako typ obrázku PNG, JPG atd. na disku.
Kroky k extrahování obrázků ze souboru Word v Pythonu
- Nakonfigurujte prostředí tak, aby k extrahování obrázků používalo Aspose.Words pro Python přes .NET
- Načtěte zdrojový soubor aplikace Word s obrázky pomocí objektu třídy Document
- Získejte seznam všech tvarů z načteného dokumentu pomocí metody get_child_nodes()
- Analyzujte všechny prvky v kolekci tvarů a detekujte obrázky
- Vytvořte jedinečné názvy souborů pro každý detekovaný obrázek v kolekci tvarů
- Uložte extrahovaný obrázek na disk s jedinečným názvem
Tyto kroky popisují proces extrahování obrázků z dokumentu Word v Pythonu sdílením konfigurace prostředí a kroků k napsání programu. Po vytvoření prostředí načtěte soubor aplikace Word s obrázky pomocí objektu třídy Document a získejte z něj kolekci všech tvarů. Protože třída Shape má metody pro detekci obrázků, můžete obrázky extrahovat a uložit na disk se zadaným názvem.
Kód pro extrahování fotografií z dokumentu Word v Pythonu
import aspose.words as aw | |
# Load the license | |
wordProtected = aw.License() | |
wordProtected.set_license("Aspose.Total.lic") | |
# Load a document | |
wordDocument = aw.Document("WordFileWithImages.docx") | |
# Get shapes collection | |
allShapes = wordDocument.get_child_nodes(aw.NodeType.SHAPE, True) | |
# Declare counter for images | |
index = 0 | |
# Iterate through all the shapes to detect and save images | |
for shape in allShapes: | |
# Type cast the node object to shape | |
shape = shape.as_shape() | |
if(shape.has_image): | |
index = index + 1 | |
# Prepare file name using the image counter and image type in the shape object | |
image_file_name = f"File.extract_images.{index}{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}" | |
# Save the extracted image on the disk | |
shape.image_data.save(image_file_name) | |
print ("Images extracted successfully from the Word file") |
Zde je uveden kód, který demonstruje proces extrahování obrázku z Wordu v Pythonu načtením zdrojového souboru pomocí objektu třídy Document, který má mnoho funkcí, jako je poskytnutí hesla pro chráněné soubory, nastavení kódování a připojení varování. zpětná volání pro řízení procesu načítání. Podobně se metoda get_child_nodes() používá k extrahování tvarů, ale můžete načíst i další uzly, jako jsou záhlaví, zápatí, tabulky, komentáře, poznámky pod čarou a tělo atd.
Tento článek nás navedl k načtení všech fotografií ze souboru Word v Pythonu. Pokud se chcete naučit proces vložení fotografie do souboru aplikace Word, přečtěte si článek na jak vložit obrázek do Wordu pomocí Pythonu.