正確に何を達成しようとしていますか?XML ファイルに基づいて定期的に再生成される HTML ファイルが必要な場合は、そのためのプログラムを作成し (たとえば、BeautifulSoup Python ライブラリを使用すると、XML/HTML ファイルを非常に簡単に解析できます)、毎回実行する必要があります。 HTML ファイルを更新する必要があります (そのための cron ジョブを設定することもできます)。
その場で XML からデータを取得できるようにする必要がある場合は、JavaScript ライブラリを使用して XML ファイルから XML をロードし、ページに動的に追加することができます。
たとえば、この Python プログラムは XML ファイル (file.xml) を解析し、XML ファイルのデータを含む HTML ファイル (song_information.html) を作成します。
from BeautifulSoup import BeautifulStoneSoup
f = open("file.xml")
soup = BeautifulStoneSoup(f.read())
f.close()
html = """<!DOCTYPE html>
<html>
<head>
<title>Song information</title>
</head>
<body>
"""
for key in soup.dict.findAll('key'):
html += "<h1>%s</h1>\n" % key.contents[0]
html += "<p>%s</p>\n" % key.nextSibling.contents[0]
html += """</body>
</html>
"""
f = open("song_information.html", "w")
f.write(html)
f.close()
次の HTML を song_information.html ファイルに書き込みます。
<!DOCTYPE html>
<html>
<head>
<title>Song information</title>
</head>
<body>
<h1>Track ID</h1>
<p>457</p>
<h1>Name</h1>
<p>Love me do</p>
<h1>Artist</h1>
<p>The Beatles</p>
<h1>Album Artist</h1>
<p>The Beatles</p>
<h1>Composer</h1>
<p>John Lennon/Paul McCartney</p>
<h1>Album</h1>
<p>The Beatles No.1</p>
<h1>Genre</h1>
<p>Varies</p>
<h1>Kind</h1>
<p>AAC audio file</p>
</body>
</html>
もちろん、これは単純化されています。Unicode サポートを実装する必要がある場合は、次のように編集します。
from BeautifulSoup import BeautifulStoneSoup
import codecs
f = codecs.open("file.xml", "r", "utf-8")
soup = BeautifulStoneSoup(f.read())
f.close()
html = """<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Song information</title>
</head>
<body>
"""
for key in soup.dict.findAll('key'):
html += "<h1>%s</h1>\n" % key.contents[0]
html += "<p>%s</p>\n" % key.nextSibling.contents[0]
html += """</body>
</html>
"""
f = codecs.open("song_information.html", "w", "utf-8")
f.write(html)
f.close()
また、おそらくより複雑な HTML を生成する必要があるため、Jinja2などのテンプレート システムを試してみることをお勧めします。