Ignore:
Timestamp:
Mar 19, 2014, 11:31:01 PM (11 years ago)
Author:
dmik
Message:

python: Merge vendor 2.7.6 to trunk.

Location:
python/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • python/trunk

  • python/trunk/Demo/xml/rss2html.py

    r2 r391  
     1"""
     2A demo that reads in an RSS XML document and emits an HTML file containing
     3a list of the individual items in the feed.
     4"""
     5
    16import sys
     7import codecs
    28
    39from xml.sax import make_parser, handler
     
    511# --- Templates
    612
    7 top = \
    8 """
     13top = """\
    914<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    10 <HTML>
    11 <HEAD>
    12   <TITLE>%s</TITLE>
    13 </HEAD>
     15<html>
     16<head>
     17  <title>%s</title>
     18  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     19</head>
    1420
    15 <BODY>
    16 <H1>%s</H1>
     21<body>
     22<h1>%s</h1>
    1723"""
    1824
    19 bottom = \
    20 """
     25bottom = """
    2126</ul>
    2227
    23 <HR>
    24 <ADDRESS>
    25 Converted to HTML by sax_rss2html.py.
    26 </ADDRESS>
     28<hr>
     29<address>
     30Converted to HTML by rss2html.py.
     31</address>
    2732
    28 </BODY>
    29 </HTML>
     33</body>
     34</html>
    3035"""
    3136
     
    3439class RSSHandler(handler.ContentHandler):
    3540
    36     def __init__(self, out = sys.stdout):
     41    def __init__(self, out=sys.stdout):
    3742        handler.ContentHandler.__init__(self)
    38         self._out = out
     43        self._out = codecs.getwriter('utf-8')(out)
    3944
    4045        self._text = ""
    4146        self._parent = None
    42         self._list_started = 0
     47        self._list_started = False
    4348        self._title = None
    4449        self._link = None
     
    7075                if not self._list_started:
    7176                    self._out.write("<ul>\n")
    72                     self._list_started = 1
     77                    self._list_started = True
    7378
    7479                self._out.write('  <li><a href="%s">%s</a> %s\n' %
     
    8792# --- Main program
    8893
    89 parser = make_parser()
    90 parser.setContentHandler(RSSHandler())
    91 parser.parse(sys.argv[1])
     94if __name__ == '__main__':
     95    parser = make_parser()
     96    parser.setContentHandler(RSSHandler())
     97    parser.parse(sys.argv[1])
Note: See TracChangeset for help on using the changeset viewer.