Mercurial > genshi > genshi-test
annotate examples/transform/run.py @ 519:9f1d90d6abd4
Cut and copy transformer operations can now operate on selected attributes.
Also added an example of inserting content to the documentation.
author | athomas |
---|---|
date | Thu, 07 Jun 2007 18:03:02 +0000 |
parents | 7a426ab6407a |
children |
rev | line source |
---|---|
107
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
1 #!/usr/bin/python |
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
2 # -*- coding: utf-8 -*- |
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
3 |
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
4 import os |
108 | 5 import sys |
107
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
6 |
230 | 7 from genshi.input import HTMLParser |
233
7a426ab6407a
* Added implementation of a simple text-based template engine. Closes #47.
cmlenz
parents:
230
diff
changeset
|
8 from genshi.template import Context, MarkupTemplate |
107
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
9 |
108 | 10 def transform(html_filename, tmpl_filename): |
11 tmpl_fileobj = open(tmpl_filename) | |
233
7a426ab6407a
* Added implementation of a simple text-based template engine. Closes #47.
cmlenz
parents:
230
diff
changeset
|
12 tmpl = MarkupTemplate(tmpl_fileobj, tmpl_filename) |
108 | 13 tmpl_fileobj.close() |
14 | |
107
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
15 html_fileobj = open(html_filename) |
108 | 16 html = HTMLParser(html_fileobj, html_filename) |
17 print tmpl.generate(Context(input=html)).render('xhtml') | |
18 html_fileobj.close() | |
107
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
19 |
5a9b6e0aa3cc
Add example that shows how to transform an HTML document.
cmlenz
parents:
diff
changeset
|
20 if __name__ == '__main__': |
108 | 21 basepath = os.path.dirname(os.path.abspath(__file__)) |
22 tmpl_filename = os.path.join(basepath, 'template.xml') | |
23 html_filename = os.path.join(basepath, 'index.html') | |
24 transform(html_filename, tmpl_filename) |