ウェブコンテンツは、情報発信の主要な形態のひとつです。 ウェブ開発では、HTMLファイルをPDF、画像(PNGやJPEGなど)、XML、XPSなど、さまざまな形式で保存したり共有したりする必要が生じることがあります。 これらのフォーマットにはそれぞれ利点があり、異なる目的に適しています。 この記事では、Spire.Doc for Python ライブラリを使用してHTMLドキュメントをこれらの形式に変換する方法について説明します。
Python Wordライブラリをインストールする
始める前に、以下のpipコマンドを使用してSpire.Doc for Pythonをインストールすることができます。
pip install Spire.Doc
Spire.Doc for PythonはPython言語をベースとした文書処理ライブラリで、開発者がWord文書を簡単に読み書き、変更、作成できるように豊富なAPIを提供しています。
LoadFromFile(fileName: string, FileFormat.Html, XHTMLValidationType.none) メソッドを使ってHTMLファイルを読み込み、SaveToFile(fileName: string, fileFormat: FileFormat) を使って指定されたファイル形式に変換します。 HTMLを画像に変換するには、SaveImageToStreams() メソッドを使用します。
サンプル・コードを以下に示す:
1. PythonでHTMLをPDFに変換する
from spire.doc import *
from spire.doc.common import *
# HTMLファイルの読み込み
document = Document()
document.LoadFromFile("input.html", FileFormat.Html, XHTMLValidationType.none)
# HTMLファイルをPDF形式で保存
document.SaveToFile("HtmlToPdf.pdf", FileFormat.PDF)
document.Close()
2. PythonでHTMLをJPG/PNG画像に変換する
from spire.doc import *
from spire.doc.common import *
import io
inputFile = "Template.html"
outputFile = "HtmlToImage.png"
# HTMLファイルの読み込み
document = Document()
document.LoadFromFile(inputFile, FileFormat.Html, XHTMLValidationType.none)
# HTMLファイルを画像ストリームとして保存
imageStream = document.SaveImageToStreams(0, ImageType.Bitmap)
# 画像ストリームを指定の画像フォーマットに保存
with open(outputFile,'wb') as imageFile:
imageFile.write(imageStream.ToArray())
document.Close()
3. PythonでHTMLをXMLに変換する
from spire.doc import *
from spire.doc.common import *
# HTMLファイルの読み込み
document = Document()
document.LoadFromFile("input.html")
# HTMLファイルをXML形式で保存
document.SaveToFile("HtmlToXml.xml", FileFormat.Xml)
document.Close()
4. PythonでHTMLをXPSに変換する
from spire.doc import *
from spire.doc.common import *
# HTMLファイルの読み込み
document = Document()
document.LoadFromFile("input.html", FileFormat.Html, XHTMLValidationType.none)
# HTMLファイルをXPS形式で保存
document.SaveToFile("HtmlToXps.xps", FileFormat.XPS)
document.Close()
上記の例では、Pythonを使ってHTMLをPDF、画像、XML、XPS、その他の形式に変換する方法を示しています。HTMLをWord文書に変換する必要がある場合は、こちらを参照してください:
https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Conversion/Python-Convert-HTML-to-Word.html
その他のWord文書処理機能の例:
https://www.e-iceblue.com/Tutorials/Python/Spire.Doc-for-Python/Program-Guide/Spire.Doc-for-Python-Program-Guide-Content.html