| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | """    webencodings.mklabels    ~~~~~~~~~~~~~~~~~~~~~    Regenarate the webencodings.labels module.    :copyright: Copyright 2012 by Simon Sapin    :license: BSD, see LICENSE for details."""import jsontry:    from urllib import urlopenexcept ImportError:    from urllib.request import urlopendef assert_lower(string):    assert string == string.lower()    return stringdef 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.pyLABELS = {''']    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'))
 |