Viewing file: mklabels.py (1.27 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
"""
webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~
Regenarate the webencodings.labels module.
:copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details.
"""
import json try: from urllib import urlopen except ImportError: from urllib.request import urlopen
def assert_lower(string): assert string == string.lower() return string
def generate(url): parts = ['''\ """
webencodings.labels ~~~~~~~~~~~~~~~~~~~
Map encoding labels to their name.
:copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details.
"""
# XXX Do not edit! # This file is automatically generated by mklabels.py
LABELS = { '''] labels = [ (repr(assert_lower(label)).lstrip('u'), repr(encoding['name']).lstrip('u')) for category in json.loads(urlopen(url).read().decode('ascii')) for encoding in category['encodings'] for label in encoding['labels']] max_len = max(len(label) for label, name in labels) parts.extend( ' %s:%s %s,\n' % (label, ' ' * (max_len - len(label)), name) for label, name in labels) parts.append('}') return ''.join(parts)
if __name__ == '__main__': print(generate('http://encoding.spec.whatwg.org/encodings.json'))
|