Ignore:
Timestamp:
Mar 19, 2014, 11:11:30 AM (11 years ago)
Author:
dmik
Message:

python: Update vendor to 2.7.6.

Location:
python/vendor/current/Demo/xml
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • python/vendor/current/Demo/xml/elem_count.py

    r2 r388  
     1"""
     2A simple demo that reads in an XML document and displays the number of
     3elements and attributes as well as a tally of elements and attributes by name.
     4"""
     5
    16import sys
     7from collections import defaultdict
    28
    39from xml.sax import make_parser, handler
     
    814        self._elems = 0
    915        self._attrs = 0
    10         self._elem_types = {}
    11         self._attr_types = {}
     16        self._elem_types = defaultdict(int)
     17        self._attr_types = defaultdict(int)
    1218
    1319    def startElement(self, name, attrs):
    14         self._elems = self._elems + 1
    15         self._attrs = self._attrs + len(attrs)
    16         self._elem_types[name] = self._elem_types.get(name, 0) + 1
     20        self._elems += 1
     21        self._attrs += len(attrs)
     22        self._elem_types[name] += 1
    1723
    1824        for name in attrs.keys():
    19             self._attr_types[name] = self._attr_types.get(name, 0) + 1
     25            self._attr_types[name] += 1
    2026
    2127    def endDocument(self):
     
    3137            print "%20s %d" % pair
    3238
    33 
    34 parser = make_parser()
    35 parser.setContentHandler(FancyCounter())
    36 parser.parse(sys.argv[1])
     39if __name__ == '__main__':
     40    parser = make_parser()
     41    parser.setContentHandler(FancyCounter())
     42    parser.parse(sys.argv[1])
  • python/vendor/current/Demo/xml/roundtrip.py

    r2 r388  
    44"""
    55
    6 import sys, string
     6import sys
    77
    88from xml.sax import saxutils, handler, make_parser
     
    1212class ContentGenerator(handler.ContentHandler):
    1313
    14     def __init__(self, out = sys.stdout):
     14    def __init__(self, out=sys.stdout):
    1515        handler.ContentHandler.__init__(self)
    1616        self._out = out
     
    4141# --- The main program
    4242
    43 parser = make_parser()
    44 parser.setContentHandler(ContentGenerator())
    45 parser.parse(sys.argv[1])
     43if __name__ == '__main__':
     44    parser = make_parser()
     45    parser.setContentHandler(ContentGenerator())
     46    parser.parse(sys.argv[1])
  • python/vendor/current/Demo/xml/rss2html.py

    r2 r388  
     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.