[utils] Add ISO3166Utils
This commit is contained in:
		| @@ -2084,6 +2084,266 @@ class ISO639Utils(object): | ||||
|                 return short_name | ||||
|  | ||||
|  | ||||
| class ISO3166Utils(object): | ||||
|     # From http://data.okfn.org/data/core/country-list | ||||
|     _country_map = { | ||||
|         'AF': 'Afghanistan', | ||||
|         'AX': 'Åland Islands', | ||||
|         'AL': 'Albania', | ||||
|         'DZ': 'Algeria', | ||||
|         'AS': 'American Samoa', | ||||
|         'AD': 'Andorra', | ||||
|         'AO': 'Angola', | ||||
|         'AI': 'Anguilla', | ||||
|         'AQ': 'Antarctica', | ||||
|         'AG': 'Antigua and Barbuda', | ||||
|         'AR': 'Argentina', | ||||
|         'AM': 'Armenia', | ||||
|         'AW': 'Aruba', | ||||
|         'AU': 'Australia', | ||||
|         'AT': 'Austria', | ||||
|         'AZ': 'Azerbaijan', | ||||
|         'BS': 'Bahamas', | ||||
|         'BH': 'Bahrain', | ||||
|         'BD': 'Bangladesh', | ||||
|         'BB': 'Barbados', | ||||
|         'BY': 'Belarus', | ||||
|         'BE': 'Belgium', | ||||
|         'BZ': 'Belize', | ||||
|         'BJ': 'Benin', | ||||
|         'BM': 'Bermuda', | ||||
|         'BT': 'Bhutan', | ||||
|         'BO': 'Bolivia, Plurinational State of', | ||||
|         'BQ': 'Bonaire, Sint Eustatius and Saba', | ||||
|         'BA': 'Bosnia and Herzegovina', | ||||
|         'BW': 'Botswana', | ||||
|         'BV': 'Bouvet Island', | ||||
|         'BR': 'Brazil', | ||||
|         'IO': 'British Indian Ocean Territory', | ||||
|         'BN': 'Brunei Darussalam', | ||||
|         'BG': 'Bulgaria', | ||||
|         'BF': 'Burkina Faso', | ||||
|         'BI': 'Burundi', | ||||
|         'KH': 'Cambodia', | ||||
|         'CM': 'Cameroon', | ||||
|         'CA': 'Canada', | ||||
|         'CV': 'Cape Verde', | ||||
|         'KY': 'Cayman Islands', | ||||
|         'CF': 'Central African Republic', | ||||
|         'TD': 'Chad', | ||||
|         'CL': 'Chile', | ||||
|         'CN': 'China', | ||||
|         'CX': 'Christmas Island', | ||||
|         'CC': 'Cocos (Keeling) Islands', | ||||
|         'CO': 'Colombia', | ||||
|         'KM': 'Comoros', | ||||
|         'CG': 'Congo', | ||||
|         'CD': 'Congo, the Democratic Republic of the', | ||||
|         'CK': 'Cook Islands', | ||||
|         'CR': 'Costa Rica', | ||||
|         'CI': 'Côte d\'Ivoire', | ||||
|         'HR': 'Croatia', | ||||
|         'CU': 'Cuba', | ||||
|         'CW': 'Curaçao', | ||||
|         'CY': 'Cyprus', | ||||
|         'CZ': 'Czech Republic', | ||||
|         'DK': 'Denmark', | ||||
|         'DJ': 'Djibouti', | ||||
|         'DM': 'Dominica', | ||||
|         'DO': 'Dominican Republic', | ||||
|         'EC': 'Ecuador', | ||||
|         'EG': 'Egypt', | ||||
|         'SV': 'El Salvador', | ||||
|         'GQ': 'Equatorial Guinea', | ||||
|         'ER': 'Eritrea', | ||||
|         'EE': 'Estonia', | ||||
|         'ET': 'Ethiopia', | ||||
|         'FK': 'Falkland Islands (Malvinas)', | ||||
|         'FO': 'Faroe Islands', | ||||
|         'FJ': 'Fiji', | ||||
|         'FI': 'Finland', | ||||
|         'FR': 'France', | ||||
|         'GF': 'French Guiana', | ||||
|         'PF': 'French Polynesia', | ||||
|         'TF': 'French Southern Territories', | ||||
|         'GA': 'Gabon', | ||||
|         'GM': 'Gambia', | ||||
|         'GE': 'Georgia', | ||||
|         'DE': 'Germany', | ||||
|         'GH': 'Ghana', | ||||
|         'GI': 'Gibraltar', | ||||
|         'GR': 'Greece', | ||||
|         'GL': 'Greenland', | ||||
|         'GD': 'Grenada', | ||||
|         'GP': 'Guadeloupe', | ||||
|         'GU': 'Guam', | ||||
|         'GT': 'Guatemala', | ||||
|         'GG': 'Guernsey', | ||||
|         'GN': 'Guinea', | ||||
|         'GW': 'Guinea-Bissau', | ||||
|         'GY': 'Guyana', | ||||
|         'HT': 'Haiti', | ||||
|         'HM': 'Heard Island and McDonald Islands', | ||||
|         'VA': 'Holy See (Vatican City State)', | ||||
|         'HN': 'Honduras', | ||||
|         'HK': 'Hong Kong', | ||||
|         'HU': 'Hungary', | ||||
|         'IS': 'Iceland', | ||||
|         'IN': 'India', | ||||
|         'ID': 'Indonesia', | ||||
|         'IR': 'Iran, Islamic Republic of', | ||||
|         'IQ': 'Iraq', | ||||
|         'IE': 'Ireland', | ||||
|         'IM': 'Isle of Man', | ||||
|         'IL': 'Israel', | ||||
|         'IT': 'Italy', | ||||
|         'JM': 'Jamaica', | ||||
|         'JP': 'Japan', | ||||
|         'JE': 'Jersey', | ||||
|         'JO': 'Jordan', | ||||
|         'KZ': 'Kazakhstan', | ||||
|         'KE': 'Kenya', | ||||
|         'KI': 'Kiribati', | ||||
|         'KP': 'Korea, Democratic People\'s Republic of', | ||||
|         'KR': 'Korea, Republic of', | ||||
|         'KW': 'Kuwait', | ||||
|         'KG': 'Kyrgyzstan', | ||||
|         'LA': 'Lao People\'s Democratic Republic', | ||||
|         'LV': 'Latvia', | ||||
|         'LB': 'Lebanon', | ||||
|         'LS': 'Lesotho', | ||||
|         'LR': 'Liberia', | ||||
|         'LY': 'Libya', | ||||
|         'LI': 'Liechtenstein', | ||||
|         'LT': 'Lithuania', | ||||
|         'LU': 'Luxembourg', | ||||
|         'MO': 'Macao', | ||||
|         'MK': 'Macedonia, the Former Yugoslav Republic of', | ||||
|         'MG': 'Madagascar', | ||||
|         'MW': 'Malawi', | ||||
|         'MY': 'Malaysia', | ||||
|         'MV': 'Maldives', | ||||
|         'ML': 'Mali', | ||||
|         'MT': 'Malta', | ||||
|         'MH': 'Marshall Islands', | ||||
|         'MQ': 'Martinique', | ||||
|         'MR': 'Mauritania', | ||||
|         'MU': 'Mauritius', | ||||
|         'YT': 'Mayotte', | ||||
|         'MX': 'Mexico', | ||||
|         'FM': 'Micronesia, Federated States of', | ||||
|         'MD': 'Moldova, Republic of', | ||||
|         'MC': 'Monaco', | ||||
|         'MN': 'Mongolia', | ||||
|         'ME': 'Montenegro', | ||||
|         'MS': 'Montserrat', | ||||
|         'MA': 'Morocco', | ||||
|         'MZ': 'Mozambique', | ||||
|         'MM': 'Myanmar', | ||||
|         'NA': 'Namibia', | ||||
|         'NR': 'Nauru', | ||||
|         'NP': 'Nepal', | ||||
|         'NL': 'Netherlands', | ||||
|         'NC': 'New Caledonia', | ||||
|         'NZ': 'New Zealand', | ||||
|         'NI': 'Nicaragua', | ||||
|         'NE': 'Niger', | ||||
|         'NG': 'Nigeria', | ||||
|         'NU': 'Niue', | ||||
|         'NF': 'Norfolk Island', | ||||
|         'MP': 'Northern Mariana Islands', | ||||
|         'NO': 'Norway', | ||||
|         'OM': 'Oman', | ||||
|         'PK': 'Pakistan', | ||||
|         'PW': 'Palau', | ||||
|         'PS': 'Palestine, State of', | ||||
|         'PA': 'Panama', | ||||
|         'PG': 'Papua New Guinea', | ||||
|         'PY': 'Paraguay', | ||||
|         'PE': 'Peru', | ||||
|         'PH': 'Philippines', | ||||
|         'PN': 'Pitcairn', | ||||
|         'PL': 'Poland', | ||||
|         'PT': 'Portugal', | ||||
|         'PR': 'Puerto Rico', | ||||
|         'QA': 'Qatar', | ||||
|         'RE': 'Réunion', | ||||
|         'RO': 'Romania', | ||||
|         'RU': 'Russian Federation', | ||||
|         'RW': 'Rwanda', | ||||
|         'BL': 'Saint Barthélemy', | ||||
|         'SH': 'Saint Helena, Ascension and Tristan da Cunha', | ||||
|         'KN': 'Saint Kitts and Nevis', | ||||
|         'LC': 'Saint Lucia', | ||||
|         'MF': 'Saint Martin (French part)', | ||||
|         'PM': 'Saint Pierre and Miquelon', | ||||
|         'VC': 'Saint Vincent and the Grenadines', | ||||
|         'WS': 'Samoa', | ||||
|         'SM': 'San Marino', | ||||
|         'ST': 'Sao Tome and Principe', | ||||
|         'SA': 'Saudi Arabia', | ||||
|         'SN': 'Senegal', | ||||
|         'RS': 'Serbia', | ||||
|         'SC': 'Seychelles', | ||||
|         'SL': 'Sierra Leone', | ||||
|         'SG': 'Singapore', | ||||
|         'SX': 'Sint Maarten (Dutch part)', | ||||
|         'SK': 'Slovakia', | ||||
|         'SI': 'Slovenia', | ||||
|         'SB': 'Solomon Islands', | ||||
|         'SO': 'Somalia', | ||||
|         'ZA': 'South Africa', | ||||
|         'GS': 'South Georgia and the South Sandwich Islands', | ||||
|         'SS': 'South Sudan', | ||||
|         'ES': 'Spain', | ||||
|         'LK': 'Sri Lanka', | ||||
|         'SD': 'Sudan', | ||||
|         'SR': 'Suriname', | ||||
|         'SJ': 'Svalbard and Jan Mayen', | ||||
|         'SZ': 'Swaziland', | ||||
|         'SE': 'Sweden', | ||||
|         'CH': 'Switzerland', | ||||
|         'SY': 'Syrian Arab Republic', | ||||
|         'TW': 'Taiwan, Province of China', | ||||
|         'TJ': 'Tajikistan', | ||||
|         'TZ': 'Tanzania, United Republic of', | ||||
|         'TH': 'Thailand', | ||||
|         'TL': 'Timor-Leste', | ||||
|         'TG': 'Togo', | ||||
|         'TK': 'Tokelau', | ||||
|         'TO': 'Tonga', | ||||
|         'TT': 'Trinidad and Tobago', | ||||
|         'TN': 'Tunisia', | ||||
|         'TR': 'Turkey', | ||||
|         'TM': 'Turkmenistan', | ||||
|         'TC': 'Turks and Caicos Islands', | ||||
|         'TV': 'Tuvalu', | ||||
|         'UG': 'Uganda', | ||||
|         'UA': 'Ukraine', | ||||
|         'AE': 'United Arab Emirates', | ||||
|         'GB': 'United Kingdom', | ||||
|         'US': 'United States', | ||||
|         'UM': 'United States Minor Outlying Islands', | ||||
|         'UY': 'Uruguay', | ||||
|         'UZ': 'Uzbekistan', | ||||
|         'VU': 'Vanuatu', | ||||
|         'VE': 'Venezuela, Bolivarian Republic of', | ||||
|         'VN': 'Viet Nam', | ||||
|         'VG': 'Virgin Islands, British', | ||||
|         'VI': 'Virgin Islands, U.S.', | ||||
|         'WF': 'Wallis and Futuna', | ||||
|         'EH': 'Western Sahara', | ||||
|         'YE': 'Yemen', | ||||
|         'ZM': 'Zambia', | ||||
|         'ZW': 'Zimbabwe', | ||||
|     } | ||||
|  | ||||
|     @classmethod | ||||
|     def short2full(cls, code): | ||||
|         """Convert an ISO 3166-2 country code to the corresponding full name""" | ||||
|         return cls._country_map.get(code.upper()) | ||||
|  | ||||
|  | ||||
| class PerRequestProxyHandler(compat_urllib_request.ProxyHandler): | ||||
|     def __init__(self, proxies=None): | ||||
|         # Set default handlers | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Yen Chi Hsuan
					Yen Chi Hsuan