Created
          May 16, 2018 21:28 
        
      - 
      
 - 
        
Save danallison/905746161b23832b9cd8029ca6919b51 to your computer and use it in GitHub Desktop.  
    A Python dictionary of second-level domains, keyed by country code. Useful when parsing URLs.
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | # https://en.wikipedia.org/wiki/Second-level_domain | |
| # https://www.quackit.com/domain-names/country_domain_extensions.cfm | |
| from collections import defaultdict | |
| second_level_domains_by_country_code = defaultdict(set) | |
| d = second_level_domains_by_country_code | |
| # Afghanistan | |
| d['af'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org' | |
| )) | |
| # Albania | |
| d['al'] = set(( | |
| 'gov', | |
| 'edu', | |
| 'org', | |
| 'com', | |
| 'net' | |
| )) | |
| # Algeria | |
| d['dz'] = set(( | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'gov', | |
| 'edu', | |
| 'asso', | |
| 'pol', | |
| 'art' | |
| )) | |
| # Andorra | |
| d['ad'] = set(('nom')) | |
| # Angola | |
| d['ao'] = set(( | |
| 'ed', | |
| 'gv', | |
| 'og', | |
| 'co', | |
| 'pb', | |
| 'it' | |
| )) | |
| # Anguilla | |
| d['ai'] = set(( | |
| 'com', | |
| 'net', | |
| 'off', | |
| 'org' | |
| )) | |
| # Antigua and Barbuda | |
| d['ag'] = set(( | |
| 'com', | |
| 'edu', | |
| 'co', | |
| 'net', | |
| 'nom', | |
| 'org' | |
| )) | |
| # Argentina | |
| d['ar'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gob', | |
| 'gov', | |
| 'int', | |
| 'mil', | |
| 'net', | |
| 'org', | |
| 'tur', | |
| 'musica' | |
| )) | |
| # Aruba | |
| d['aw'] = set(( | |
| 'com', | |
| )) | |
| # Ascension Island | |
| d['ac'] = set(( | |
| 'com', | |
| 'net', | |
| 'gov', | |
| 'org', | |
| 'mil', | |
| )) | |
| # Australia | |
| d['au'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'csiro', | |
| 'asn', | |
| 'id', | |
| 'act', | |
| 'nsw', | |
| 'nt', | |
| 'qld', | |
| 'sa', | |
| 'tas', | |
| 'vic', | |
| 'wa', | |
| 'archie', | |
| 'conf', | |
| 'gw', | |
| 'info', | |
| 'otc', | |
| 'oz', | |
| 'telememo', | |
| )) | |
| # Austria | |
| d['at'] = set(( | |
| 'gv', | |
| 'ac', | |
| 'co', | |
| 'or', | |
| 'priv', | |
| )) | |
| # Azerbaijan | |
| d['az'] = set(( | |
| 'com', | |
| 'net', | |
| 'int', | |
| 'gov', | |
| 'org', | |
| 'edu', | |
| 'info', | |
| 'pp', | |
| 'mil', | |
| 'name', | |
| 'pro', | |
| 'biz', | |
| )) | |
| # Bahamas | |
| d['bs'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| )) | |
| # Bahrain | |
| d['bh'] = set(( | |
| 'com', | |
| 'info', | |
| 'cc', | |
| 'edu', | |
| 'biz', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| )) | |
| # Bangladesh | |
| d['bd'] = set(( | |
| 'com', | |
| 'edu', | |
| 'ac', | |
| 'net', | |
| 'gov', | |
| 'org', | |
| 'mil', | |
| )) | |
| # Barbados | |
| d['bb'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| 'info', | |
| 'co', | |
| 'store', | |
| 'tv', | |
| 'biz', | |
| )) | |
| # Belize | |
| d['bz'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| )) | |
| # Benin | |
| d['bj'] = set(( | |
| 'gouv', | |
| 'mil', | |
| 'edu ', | |
| 'gov ', | |
| 'asso', | |
| 'barreau', | |
| 'com ', | |
| )) | |
| # Bolivia | |
| d['bo'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'tv', | |
| 'mil', | |
| 'int', | |
| 'gob', | |
| 'gov', | |
| 'edu', | |
| )) | |
| # Bosnia and Herzegovina | |
| d['ba'] = set(( | |
| 'org', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| 'unsa', | |
| 'untz', | |
| 'unmo', | |
| 'unbi', | |
| 'unze', | |
| 'co', | |
| 'com', | |
| 'rs', | |
| )) | |
| # Botswana | |
| d['bw'] = set(( | |
| 'co', | |
| 'org', | |
| )) | |
| # Brazil | |
| d['br'] = set(( | |
| 'adm', | |
| 'adv', | |
| 'agr', | |
| 'am', | |
| 'arq', | |
| 'art', | |
| 'ato', | |
| 'b', | |
| 'bio', | |
| 'blog', | |
| 'bmd', | |
| 'cim', | |
| 'cng', | |
| 'cnt', | |
| 'com', | |
| 'coop', | |
| 'ecn', | |
| 'edu', | |
| 'eng', | |
| 'esp', | |
| 'etc', | |
| 'eti', | |
| 'far', | |
| 'flog', | |
| 'fm', | |
| 'fnd', | |
| 'fot', | |
| 'fst', | |
| 'g12', | |
| 'ggf', | |
| 'gov', | |
| 'imb', | |
| 'ind', | |
| 'inf', | |
| 'jor', | |
| 'jus', | |
| 'leg', | |
| 'lel', | |
| 'mat', | |
| 'med', | |
| 'mil', | |
| 'mus', | |
| 'net', | |
| 'nom', | |
| 'not', | |
| 'ntr', | |
| 'odo', | |
| 'org', | |
| 'ppg', | |
| 'pro', | |
| 'psc', | |
| 'psi', | |
| 'qsl', | |
| 'radio', | |
| 'rec', | |
| 'slg', | |
| 'srv', | |
| 'taxi', | |
| 'teo', | |
| 'tmp', | |
| 'trd', | |
| 'tur', | |
| 'tv', | |
| 'vet', | |
| 'vlog', | |
| 'wiki', | |
| 'zlg', | |
| )) | |
| # Brunei Darussalam | |
| d['bn'] = set(( | |
| 'com', | |
| 'edu', | |
| 'org', | |
| 'net', | |
| )) | |
| # Burma (Union of Myanmar)) | |
| d['mm'] = set(( | |
| 'net', | |
| 'com', | |
| 'edu', | |
| 'org', | |
| 'gov', | |
| )) | |
| # Cambodia | |
| d['kh'] = set(( | |
| 'per', | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| 'net', | |
| 'org', | |
| )) | |
| # Cameroon | |
| d['cm'] = set(( | |
| 'gov', | |
| )) | |
| # Canada | |
| d['ca'] = set(( | |
| 'ab', | |
| 'bc', | |
| 'mb', | |
| 'nb', | |
| 'nf', | |
| 'nl', | |
| 'ns', | |
| 'nt', | |
| 'nu', | |
| 'on', | |
| 'pe', | |
| 'qc', | |
| 'sk', | |
| 'yk', | |
| )) | |
| # Cayman Islands | |
| d['ky'] = set(( | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| )) | |
| # Chile | |
| d['cl'] = set(( | |
| 'gov', | |
| 'gob', | |
| )) | |
| # China | |
| d['cn'] = set(( | |
| 'ac', | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| 'ah', | |
| 'bj', | |
| 'cq', | |
| 'fj', | |
| 'gd', | |
| 'gs', | |
| 'gz', | |
| 'gx', | |
| 'ha', | |
| 'hb', | |
| 'he', | |
| 'hi', | |
| 'hl', | |
| 'hn', | |
| 'jl', | |
| 'js', | |
| 'jx', | |
| 'ln', | |
| 'nm', | |
| 'nx', | |
| 'qh', | |
| 'sc', | |
| 'sd', | |
| 'sh', | |
| 'sn', | |
| 'sx', | |
| 'tj', | |
| 'tw', | |
| 'xj', | |
| 'xz', | |
| 'yn', | |
| 'zj', | |
| )) | |
| # Colombia | |
| d['co'] = set(( | |
| 'com', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'mil', | |
| 'nom', | |
| )) | |
| # Comoros | |
| d['km'] = set(( | |
| 'com', | |
| 'coop', | |
| 'asso', | |
| 'nom', | |
| 'presse', | |
| 'tm', | |
| 'medecin', | |
| 'notaires', | |
| 'pharmaciens', | |
| 'veterinaire', | |
| 'edu', | |
| 'gouv', | |
| 'mil', | |
| )) | |
| # Cook Islands | |
| d['ck'] = set(( | |
| 'co', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'gen', | |
| 'biz', | |
| 'info', | |
| )) | |
| # Costa Rica | |
| d['cr'] = set(( | |
| 'ac', | |
| 'co', | |
| 'ed', | |
| 'fi', | |
| 'go', | |
| 'or', | |
| 'sa', | |
| )) | |
| # Cyprus, Republic of | |
| d['cy'] = set(( | |
| 'ac', | |
| 'net', | |
| 'gov', | |
| 'org', | |
| 'pro', | |
| 'name', | |
| 'ekloges', | |
| 'tm', | |
| 'ltd', | |
| 'biz', | |
| 'press', | |
| 'parliament', | |
| 'com', | |
| )) | |
| # Dominica | |
| d['dm'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| )) | |
| # Dominican Republic | |
| d['do'] = set(( | |
| 'edu', | |
| 'gob', | |
| 'gov', | |
| 'com', | |
| 'sld', | |
| 'org', | |
| 'net', | |
| 'web', | |
| 'mil', | |
| 'art', | |
| )) | |
| # East Timor | |
| d['tl'] = set(( | |
| 'com', | |
| 'gov', | |
| )) | |
| # Ecuador | |
| d['ec'] = set(( | |
| 'com', | |
| 'info', | |
| 'net', | |
| 'fin', | |
| 'med', | |
| 'pro', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| )) | |
| # Eygypt | |
| d['eg'] = set(( | |
| 'com', | |
| 'edu', | |
| 'eun', | |
| 'gov', | |
| 'mil', | |
| 'name', | |
| 'net', | |
| 'org', | |
| 'sci', | |
| )) | |
| # El Salvador | |
| d['sv'] = set(( | |
| 'edu', | |
| 'gob', | |
| 'com', | |
| 'org', | |
| 'red', | |
| )) | |
| # Eritrea | |
| d['er'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| 'net', | |
| 'org', | |
| 'ind', | |
| 'rochest', | |
| 'w', | |
| )) | |
| # Ethiopia | |
| d['et'] = set(( | |
| 'com', | |
| 'gov', | |
| 'org', | |
| 'edu', | |
| 'net', | |
| 'biz', | |
| 'name', | |
| 'info', | |
| )) | |
| # Falkland Islands | |
| d['fk'] = set(( | |
| 'co', | |
| 'org', | |
| 'gov', | |
| 'ac', | |
| 'nom', | |
| 'net', | |
| )) | |
| # Fiji | |
| d['fj'] = set(( | |
| 'ac', | |
| 'biz', | |
| 'com', | |
| 'info', | |
| 'mil', | |
| 'name', | |
| 'net', | |
| 'org', | |
| 'pro', | |
| )) | |
| # France | |
| d['fr'] = set(( | |
| 'tm', | |
| 'asso', | |
| 'nom', | |
| 'prd', | |
| 'presse', | |
| 'com', | |
| 'gouv', | |
| )) | |
| # French Polynesia | |
| d['pf'] = set(( | |
| 'com', | |
| )) | |
| # Ghana | |
| d['gh'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'org', | |
| 'mil', | |
| )) | |
| # Greece | |
| d['gr'] = set(( | |
| 'com', | |
| 'edu', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| )) | |
| # Guadeloupe | |
| d['gp'] = set(( | |
| 'com', | |
| 'net', | |
| 'mobi', | |
| 'edu', | |
| 'asso', | |
| 'org', | |
| )) | |
| # Guam | |
| d['gu'] = set(( | |
| 'com', | |
| )) | |
| # Guatemala | |
| d['gt'] = set(( | |
| 'com', | |
| 'edu', | |
| 'net', | |
| 'gob', | |
| 'org', | |
| 'mil', | |
| 'ind', | |
| )) | |
| # Guernsey | |
| d['gg'] = set(( | |
| 'ac', | |
| 'co', | |
| 'gov', | |
| 'net', | |
| 'sch', | |
| 'org', | |
| )) | |
| # Guinea | |
| d['gn'] = set(( | |
| 'com', | |
| 'ac', | |
| 'gov', | |
| 'org', | |
| 'net', | |
| )) | |
| # Guyana | |
| d['gy'] = set(( | |
| 'co', | |
| 'com', | |
| 'net', | |
| )) | |
| # Hong Kong | |
| d['hk'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'idv', | |
| 'net', | |
| 'org', | |
| )) | |
| # Hungary | |
| d['hu'] = set(( | |
| '2000', | |
| 'agrar', | |
| 'bolt', | |
| 'casino', | |
| 'city', | |
| 'co', | |
| 'erotica', | |
| 'erotika', | |
| 'film', | |
| 'forum', | |
| 'games', | |
| 'hotel', | |
| 'info', | |
| 'ingatlan', | |
| 'jogasz', | |
| 'konyvelo', | |
| 'lakas', | |
| 'media', | |
| 'news', | |
| 'org', | |
| 'priv', | |
| 'reklam', | |
| 'sex', | |
| 'shop', | |
| 'sport', | |
| 'suli', | |
| 'szex', | |
| 'tm', | |
| 'tozsde', | |
| 'utazas', | |
| 'video', | |
| )) | |
| # India | |
| d['in'] = set(( | |
| 'co', | |
| 'firm', | |
| 'net', | |
| 'org', | |
| 'gen', | |
| 'ind', | |
| 'ac', | |
| 'edu', | |
| 'res', | |
| 'gov', | |
| 'mil', | |
| 'nic', | |
| )) | |
| # Indonesia | |
| d['id'] = set(( | |
| 'ac', | |
| 'co', | |
| 'net', | |
| 'or', | |
| 'web', | |
| 'sch', | |
| 'mil', | |
| 'go', | |
| )) | |
| # Iran | |
| d['ir'] = set(( | |
| 'ac', | |
| 'co', | |
| 'gov', | |
| 'id', | |
| 'net', | |
| 'org', | |
| 'sch', | |
| )) | |
| # Iraq | |
| d['iq'] = set(( | |
| 'gov', | |
| 'edu', | |
| 'com', | |
| 'mil', | |
| 'org', | |
| )) | |
| # Israel | |
| d['il'] = set(( | |
| 'ac', | |
| 'co', | |
| 'org', | |
| 'net', | |
| 'k12', | |
| 'gov', | |
| 'muni', | |
| 'idf', | |
| )) | |
| # Isle of Man | |
| d['co'] = set(( | |
| 'plc', | |
| 'net', | |
| 'co', | |
| 'org', | |
| 'ac', | |
| 'ltd', | |
| 'com', | |
| 'gov', | |
| )) | |
| # Jamaica | |
| d['jm'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| )) | |
| # Japan | |
| d['jp'] = set(( | |
| 'ac', | |
| 'ad', | |
| 'co', | |
| 'ed', | |
| 'go', | |
| 'gr', | |
| 'lg', | |
| 'ne', | |
| 'or', | |
| )) | |
| # Jersey | |
| d['je'] = set(( | |
| 'co', | |
| 'org', | |
| 'net', | |
| 'sch', | |
| 'gov', | |
| )) | |
| # Jordan | |
| d['jo'] = set(( | |
| 'com', | |
| 'net', | |
| 'gov', | |
| 'edu', | |
| 'org', | |
| 'mil', | |
| 'name', | |
| 'sch', | |
| )) | |
| # Kazakhstan | |
| d['kz'] = set(( | |
| 'org', | |
| 'edu', | |
| 'net', | |
| 'gov', | |
| 'mil', | |
| 'com', | |
| )) | |
| # Kenya | |
| d['ke'] = set(( | |
| 'co', | |
| 'or', | |
| 'ne', | |
| 'go', | |
| 'ac', | |
| 'sc', | |
| )) | |
| # Kiribati | |
| d['ki'] = set(( | |
| 'com', | |
| 'biz', | |
| 'net', | |
| 'info', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| 'mob', | |
| 'tel', | |
| 'phone', | |
| )) | |
| # Korea, South (Republic of Korea)) | |
| # See actual list toward the bottom of this file | |
| # d['kr'] = set(( | |
| # 'co', | |
| # 'ne', | |
| # 'or', | |
| # 're', | |
| # 'pe', | |
| # 'go', | |
| # 'mil', | |
| # 'ac', | |
| # 'hs', | |
| # 'ms', | |
| # 'es', | |
| # 'sc', | |
| # 'kg', | |
| # 'seoul', | |
| # 'busan', | |
| # 'daegu', | |
| # 'incheon', | |
| # 'gwangju', | |
| # 'daejeon', | |
| # 'ulsan', | |
| # 'gyeonggi', | |
| # 'gangwon', | |
| # 'chungbuk', | |
| # 'chungnam', | |
| # 'jeonbuk', | |
| # 'jeonnam', | |
| # 'gyeongbuk', | |
| # 'gyeongnam', | |
| # 'jeju', | |
| # )) | |
| # Kuwait | |
| d['kw'] = set(( | |
| 'edu', | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| )) | |
| # Kyrgyzstan | |
| d['kg'] = set(( | |
| 'gov', | |
| 'mil', | |
| )) | |
| # Latvia | |
| d['lv'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'org', | |
| 'mil', | |
| 'id', | |
| 'net', | |
| 'asn', | |
| 'conf', | |
| )) | |
| # Lebanon | |
| d['lb'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| )) | |
| # Lesotho | |
| d['ls'] = set(( | |
| 'co', | |
| 'org', | |
| )) | |
| # Liberia | |
| d['lr'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'org', | |
| 'net', | |
| )) | |
| # Libya | |
| d['ly'] = set(( | |
| 'com', | |
| 'net', | |
| 'gov', | |
| 'plc', | |
| 'edu', | |
| 'sch', | |
| 'med', | |
| 'org', | |
| 'id', | |
| )) | |
| # Macau | |
| d['mo'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| )) | |
| # Macedonia (Republic of Macedonia)) | |
| d['mk'] = set(( | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| 'inf', | |
| 'name', | |
| )) | |
| # Madagascar | |
| d['mg'] = set(( | |
| 'org', | |
| 'nom', | |
| 'gov', | |
| 'prd', | |
| 'tm', | |
| 'edu', | |
| 'mil', | |
| 'com', | |
| )) | |
| # Malawi | |
| d['mw'] = set(( | |
| 'ac', | |
| 'co', | |
| 'com', | |
| 'coop', | |
| 'edu', | |
| 'gov', | |
| 'int', | |
| 'museum', | |
| 'net', | |
| 'org', | |
| )) | |
| # Malaysia | |
| d['my'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| 'sch', | |
| 'mil', | |
| 'name', | |
| )) | |
| # Maldives (Republic of Maldives)) | |
| d['mv'] = set(( | |
| 'aero', | |
| 'biz', | |
| 'com', | |
| 'coop', | |
| 'edu', | |
| 'gov', | |
| 'info', | |
| 'int', | |
| 'mil', | |
| 'museum', | |
| 'name', | |
| 'net', | |
| 'org', | |
| 'pro', | |
| )) | |
| # Mali | |
| d['ml'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'presse', | |
| )) | |
| # Malta | |
| d['mt'] = set(( | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| )) | |
| # Mauritania | |
| d['mr'] = set(( | |
| 'gov', | |
| )) | |
| # Mauritius | |
| d['mu'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| 'ac', | |
| 'co', | |
| 'or', | |
| )) | |
| # Mexico | |
| d['mx'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gob', | |
| )) | |
| # Monaco | |
| d['mc'] = set(( | |
| 'tm', | |
| 'asso', | |
| )) | |
| # Mongolia | |
| d['mn'] = set(( | |
| 'gov', | |
| 'edu', | |
| 'org', | |
| )) | |
| # Montenegro | |
| d['me'] = set(( | |
| 'co', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'ac', | |
| 'gov', | |
| 'its', | |
| 'priv', | |
| )) | |
| # Morocco | |
| d['ma'] = set(( | |
| 'net', | |
| 'ac', | |
| 'org', | |
| 'gov', | |
| 'press', | |
| 'co', | |
| )) | |
| # Mozambique | |
| d['mz'] = set(( | |
| 'co', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| )) | |
| # Namibia | |
| d['na'] = set(( | |
| 'com', | |
| 'co', | |
| 'org', | |
| 'edu', | |
| 'alt', | |
| 'in', | |
| 'info', | |
| 'mobi', | |
| 'ws', | |
| )) | |
| # Nauru | |
| d['nr'] = set(( | |
| 'edu', | |
| 'gov', | |
| 'biz', | |
| 'info', | |
| 'net', | |
| 'org', | |
| 'com', | |
| )) | |
| # Nepal | |
| d['np'] = set(( | |
| 'com', | |
| 'org', | |
| 'edu', | |
| 'net', | |
| 'gov', | |
| 'mil', | |
| )) | |
| # New Zealand | |
| d['nz'] = set(( | |
| 'ac', | |
| 'co', | |
| 'geek', | |
| 'gen', | |
| 'maori', | |
| 'net', | |
| 'org', | |
| 'school', | |
| 'cri', | |
| 'govt', | |
| 'iwi', | |
| 'parliament', | |
| 'mil', | |
| )) | |
| # Nicaragua | |
| d['ni'] = set(( | |
| 'gob', | |
| 'co', | |
| 'ac', | |
| 'org', | |
| 'nom', | |
| 'net', | |
| 'mil', | |
| )) | |
| # Nigeria | |
| d['ng'] = set(( | |
| 'com', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| 'net', | |
| )) | |
| # Norfolk Island | |
| d['nf'] = set(( | |
| 'com', | |
| 'net', | |
| 'per', | |
| 'rec', | |
| 'web', | |
| 'arts', | |
| 'firm', | |
| 'info', | |
| 'other', | |
| 'store', | |
| )) | |
| # Oman | |
| d['om'] = set(( | |
| 'com', | |
| 'co', | |
| 'edu', | |
| 'ac', | |
| 'sch', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| 'mil', | |
| 'museum', | |
| 'biz', | |
| 'pro', | |
| 'med', | |
| )) | |
| # Pakistan | |
| d['pk'] = set(( | |
| 'net', | |
| 'edu', | |
| 'org', | |
| 'fam', | |
| 'biz', | |
| 'web', | |
| 'gov', | |
| 'gob', | |
| 'gok', | |
| 'gon', | |
| 'gop', | |
| 'gos', | |
| )) | |
| # Palau | |
| d['pw'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'belau', | |
| )) | |
| # Palestinian Territory, Occupied | |
| d['ps'] = set(( | |
| 'com', | |
| 'biz', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| 'sch', | |
| 'mun', | |
| )) | |
| # Panama | |
| d['pa'] = set(( | |
| 'net', | |
| 'com', | |
| 'ac', | |
| 'sld', | |
| 'gob', | |
| 'edu', | |
| 'org', | |
| 'abo', | |
| 'ing', | |
| 'med', | |
| 'nom', | |
| )) | |
| # Papua New Guinea | |
| d['pg'] = set(( | |
| 'com', | |
| 'net', | |
| 'ac', | |
| 'gov', | |
| 'mil', | |
| 'org', | |
| )) | |
| # Paraguay | |
| d['py'] = set(( | |
| 'org', | |
| 'edu', | |
| 'mil', | |
| 'gov', | |
| 'net', | |
| 'com', | |
| 'una', | |
| )) | |
| # Peru | |
| d['pe'] = set(( | |
| 'edu', | |
| 'gob', | |
| 'nom', | |
| 'mil', | |
| 'sld', | |
| 'org', | |
| 'com', | |
| 'net', | |
| )) | |
| # Philippines | |
| d['ph'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'mil', | |
| 'ngo', | |
| 'i', | |
| 'gov', | |
| 'edu', | |
| )) | |
| # Pitcairn Islands | |
| d['pl'] = set(( | |
| 'com', | |
| 'org', | |
| 'gov', | |
| )) | |
| # Poland | |
| d['pl'] = set(( | |
| 'com', | |
| 'biz', | |
| 'net', | |
| 'art', | |
| 'edu', | |
| 'org', | |
| 'ngo', | |
| 'gov', | |
| 'info', | |
| 'mil', | |
| 'waw', | |
| 'warszawa', | |
| 'wroc', | |
| 'wroclaw', | |
| 'krakow', | |
| 'katowice', | |
| 'poznan', | |
| 'lodz', | |
| 'gda', | |
| 'gdansk', | |
| 'slupsk', | |
| 'radom', | |
| 'szczecin', | |
| 'lublin', | |
| 'bialystok', | |
| 'olsztyn', | |
| 'torun', | |
| 'gorzow', | |
| 'zgora', | |
| )) | |
| # Portugal | |
| d['pt'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'int', | |
| 'net', | |
| 'nome', | |
| 'org', | |
| 'publ', | |
| )) | |
| # Puerto Rico | |
| d['pr'] = set(( | |
| 'biz', | |
| 'com', | |
| 'edu', | |
| 'gov', | |
| 'info', | |
| 'isla', | |
| 'name', | |
| 'net', | |
| 'org', | |
| 'pro', | |
| 'est', | |
| 'prof', | |
| 'ac', | |
| )) | |
| # Qatar | |
| d['qa'] = set(( | |
| 'com', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| )) | |
| # Romania | |
| d['ro'] = set(( | |
| 'arts', | |
| 'com', | |
| 'firm', | |
| 'info', | |
| 'nom', | |
| 'nt', | |
| 'org', | |
| 'rec', | |
| 'store', | |
| 'tm', | |
| 'www', | |
| )) | |
| # Réunion | |
| d['re'] = set(( | |
| 'asso', | |
| 'nom', | |
| 'com', | |
| )) | |
| # Russia (Russian Federation)) | |
| # See actual list at the bottom of this file | |
| # d['ru'] = set(( | |
| # 'com', | |
| # 'net', | |
| # 'org', | |
| # 'pp', | |
| # )) | |
| # Rwanda | |
| d['rw'] = set(( | |
| 'gov', | |
| 'net', | |
| 'edu', | |
| 'ac', | |
| 'com', | |
| 'co', | |
| 'int', | |
| 'mil', | |
| 'gouv', | |
| )) | |
| # Saint Helena | |
| d['sh'] = set(( | |
| 'co', | |
| 'com', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| 'net', | |
| 'nom', | |
| )) | |
| # Saint Kitts and Nevis | |
| d['kn'] = set(( | |
| 'org', | |
| 'net', | |
| 'gov', | |
| 'edu', | |
| )) | |
| # Saint Lucia | |
| d['lc'] = set(( | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'co', | |
| 'l', | |
| 'p', | |
| )) | |
| # Saint Vincent and the Grenadines | |
| d['vc'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| )) | |
| # Samoa | |
| d['ws'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| )) | |
| # São Tomé and Príncipe | |
| d['st'] = set(( | |
| 'gov', | |
| 'saotome', | |
| 'principe', | |
| 'consulado', | |
| 'embaixada', | |
| 'org', | |
| 'edu', | |
| 'net', | |
| 'com', | |
| 'store', | |
| 'mil', | |
| 'co', | |
| )) | |
| # Saudi Arabia | |
| d['sa'] = set(( | |
| 'com', | |
| 'edu', | |
| 'sch', | |
| 'med', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| 'pub', | |
| )) | |
| # Serbia | |
| d['rs'] = set(( | |
| 'co', | |
| 'org', | |
| 'edu', | |
| 'ac', | |
| 'gov', | |
| 'in', | |
| )) | |
| # Seychelles | |
| d['sc'] = set(( | |
| 'com', | |
| 'net', | |
| 'edu', | |
| 'gov', | |
| 'org', | |
| )) | |
| # Sierra Leone | |
| d['sl'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'gov', | |
| )) | |
| # Singapore | |
| d['sg'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'gov', | |
| 'edu', | |
| 'per', | |
| 'idn', | |
| )) | |
| # Solomon Islands | |
| d['sb'] = set(( | |
| 'com', | |
| 'net', | |
| 'edu', | |
| 'org', | |
| 'gov', | |
| )) | |
| # South Africa | |
| # See actual list towards bottom of this file | |
| # d['za'] = set(( | |
| # 'ac', | |
| # 'city', | |
| # 'co', | |
| # 'edu', | |
| # 'gov', | |
| # 'law', | |
| # 'mil', | |
| # 'nom', | |
| # 'org', | |
| # 'school', | |
| # 'ecape', | |
| # 'fs', | |
| # 'gp', | |
| # 'kzn', | |
| # 'mpm', | |
| # 'ncape', | |
| # 'lp', | |
| # 'nw', | |
| # 'wcape', | |
| # 'alt', | |
| # 'net', | |
| # 'ngo', | |
| # 'tm', | |
| # 'web', | |
| # 'agric', | |
| # 'cybernet', | |
| # 'grondar', | |
| # 'iaccess', | |
| # 'inca', | |
| # 'nis', | |
| # 'olivetti', | |
| # 'pix', | |
| # )) | |
| # Spain | |
| d['es'] = set(( | |
| 'com', | |
| 'nom', | |
| 'org', | |
| 'gob', | |
| 'edu', | |
| )) | |
| # Sri Lanka | |
| d['lk'] = set(( | |
| 'com', | |
| 'org', | |
| 'edu', | |
| 'ngo', | |
| 'soc', | |
| 'web', | |
| 'ltd', | |
| 'assn', | |
| 'grp', | |
| 'hotel', | |
| 'gov', | |
| 'sch', | |
| 'net', | |
| 'int', | |
| )) | |
| # Sudan | |
| d['sd'] = set(( | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'edu', | |
| 'med', | |
| 'tv', | |
| 'gov', | |
| 'info', | |
| )) | |
| # Swaziland | |
| d['sz'] = set(( | |
| 'co', | |
| 'ac', | |
| 'org', | |
| )) | |
| # Sweden | |
| d['se'] = set(( | |
| 'a', | |
| 'b', | |
| 'ac', | |
| 'bd', | |
| 'c', | |
| 'd', | |
| 'e', | |
| 'f', | |
| 'g', | |
| 'h', | |
| 'i', | |
| 'k', | |
| 'l', | |
| 'm', | |
| 'n', | |
| 'o', | |
| 'p', | |
| 'r', | |
| 's', | |
| 't', | |
| 'u', | |
| 'w', | |
| 'x', | |
| 'y', | |
| 'z', | |
| 'org', | |
| 'pp', | |
| 'tm', | |
| 'parti', | |
| 'press', | |
| )) | |
| # Syria | |
| d['sy'] = set(( | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'mil', | |
| 'com', | |
| 'org', | |
| 'news', | |
| )) | |
| # Taiwan (Republic of China)) | |
| d['tw'] = set(( | |
| 'edu', | |
| 'gov', | |
| 'mil', | |
| 'com', | |
| 'net', | |
| 'org', | |
| 'idv', | |
| 'game', | |
| 'ebiz', | |
| 'club', | |
| )) | |
| # Tajikistan | |
| d['tj'] = set(( | |
| 'ac', | |
| 'aero', | |
| 'biz', | |
| 'co', | |
| 'com', | |
| 'coop', | |
| 'dyn', | |
| 'edu', | |
| 'go', | |
| 'gov', | |
| 'info', | |
| 'int', | |
| 'mil', | |
| 'museum', | |
| 'my', | |
| 'name', | |
| 'net', | |
| 'org', | |
| 'per', | |
| 'pro', | |
| 'web', | |
| )) | |
| # Tanzania | |
| d['tz'] = set(( | |
| 'co', | |
| 'ac', | |
| 'go', | |
| 'or', | |
| 'ne', | |
| )) | |
| # Thailand | |
| d['th'] = set(( | |
| 'ac', | |
| 'co', | |
| 'in', | |
| 'go', | |
| 'mi', | |
| 'or', | |
| 'net', | |
| )) | |
| # Trinidad and Tobago | |
| d['tt'] = set(( | |
| 'co', | |
| 'com', | |
| 'org', | |
| 'net', | |
| 'biz', | |
| 'info', | |
| 'pro', | |
| 'name', | |
| 'edu', | |
| 'gov', | |
| )) | |
| # Tunisia | |
| d['tn'] = set(( | |
| 'com', | |
| 'ens', | |
| 'fin', | |
| 'gov', | |
| 'ind', | |
| 'intl', | |
| 'nat', | |
| 'net', | |
| 'org', | |
| 'info', | |
| 'perso', | |
| 'tourism', | |
| 'edunet', | |
| 'rnrt', | |
| 'rns', | |
| 'rnu', | |
| 'mincom', | |
| 'agrinet', | |
| 'defense', | |
| )) | |
| # Turkey | |
| d['tr'] = set(( | |
| 'com', | |
| 'gen', | |
| 'org', | |
| 'biz', | |
| 'info', | |
| 'av', | |
| 'dr', | |
| 'pol', | |
| 'bel', | |
| 'mil', | |
| 'tsk', | |
| 'bbs', | |
| 'k12', | |
| 'edu', | |
| 'name', | |
| 'net', | |
| 'gov', | |
| 'web', | |
| 'tel', | |
| 'tv', | |
| )) | |
| # Uganda | |
| d['ug'] = set(( | |
| 'co', | |
| 'ac', | |
| 'sc', | |
| 'go', | |
| 'ne', | |
| 'or', | |
| )) | |
| # Ukraine | |
| d['ua'] = set(( | |
| 'com', | |
| 'gov', | |
| 'net', | |
| 'edu', | |
| 'org', | |
| 'in', | |
| )) | |
| # United Arab Emirates | |
| d['ae'] = set(( | |
| 'co', | |
| 'net', | |
| 'gov', | |
| 'ac', | |
| 'sch', | |
| 'org', | |
| 'mil', | |
| 'pro', | |
| 'name', | |
| )) | |
| # United Kingdom | |
| d['uk'] = set(( | |
| 'ac', | |
| 'co', | |
| 'gov', | |
| 'ltd', | |
| 'me', | |
| 'mod', | |
| 'net', | |
| 'nic', | |
| 'nhs', | |
| 'org', | |
| 'plc', | |
| 'police', | |
| 'sch', | |
| )) | |
| # United States of America | |
| d['us'] = set(( | |
| 'ak', | |
| 'al', | |
| 'ar', | |
| 'az', | |
| 'ca', | |
| 'co', | |
| 'ct', | |
| 'de', | |
| 'fl', | |
| 'ga', | |
| 'hi', | |
| 'ia', | |
| 'id', | |
| 'il', | |
| 'in', | |
| 'ks', | |
| 'ky', | |
| 'la', | |
| 'ma', | |
| 'md', | |
| 'me', | |
| 'mi', | |
| 'mn', | |
| 'mo', | |
| 'ms', | |
| 'mt', | |
| 'nc', | |
| 'nd', | |
| 'ne', | |
| 'nh', | |
| 'nj', | |
| 'nm', | |
| 'nv', | |
| 'ny', | |
| 'oh', | |
| 'ok', | |
| 'or', | |
| 'pa', | |
| 'ri', | |
| 'sc', | |
| 'sd', | |
| 'tn', | |
| 'tx', | |
| 'ut', | |
| 'va', | |
| 'vt', | |
| 'wa', | |
| 'wi', | |
| 'wv', | |
| 'wy', | |
| 'dc', | |
| 'as', | |
| 'gu', | |
| 'mp', | |
| 'pr', | |
| 'vi', | |
| 'dni', | |
| 'fed', | |
| 'isa', | |
| 'kids', | |
| 'nsn', | |
| )) | |
| # Uruguay | |
| d['uy'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gub', | |
| 'net', | |
| 'mil', | |
| 'org', | |
| )) | |
| # Uds | |
| d['vi'] = set(( | |
| 'co', | |
| 'com', | |
| )) | |
| # Uzbekistan | |
| d['uz'] = set(( | |
| 'co', | |
| 'com', | |
| )) | |
| # Venezuela | |
| d['ve'] = set(( | |
| 'com', | |
| 'edu', | |
| 'gob', | |
| 'mil', | |
| 'net', | |
| 'org', | |
| 'info', | |
| 'co', | |
| 'web', | |
| )) | |
| # Vietnam | |
| d['vn'] = set(( | |
| 'com', | |
| 'biz', | |
| 'edu', | |
| 'gov', | |
| 'net', | |
| 'org', | |
| 'int', | |
| 'ac', | |
| 'pro', | |
| 'info', | |
| 'health', | |
| 'name', | |
| )) | |
| # Yemen | |
| d['ye'] = set(( | |
| 'com', | |
| 'co', | |
| 'ltd', | |
| 'me', | |
| 'net', | |
| 'org', | |
| 'plc', | |
| 'gov', | |
| )) | |
| # Zambia | |
| d['zm'] = set(( | |
| 'ac', | |
| 'co', | |
| 'com', | |
| 'org', | |
| )) | |
| # Zimbabwe | |
| d['zw'] = set(( | |
| 'co', | |
| )) | |
| # Sets below this line come from separate sources | |
| # Russia: https://cctld.ru/en/domains/domens_ru/reserved.php | |
| d['ru'] = set(( | |
| 'ac', | |
| 'com', | |
| 'edu', | |
| 'int', | |
| 'net', | |
| 'org', | |
| 'pp', | |
| 'gov', | |
| 'mil', | |
| 'test', | |
| 'adygeya', | |
| 'bashkiria', | |
| 'ulan-ude', | |
| 'buryatia', | |
| 'dagestan', | |
| 'nalchik', | |
| 'kalmykia', | |
| 'kchr', | |
| 'ptz', | |
| 'karelia', | |
| 'komi', | |
| 'mari-el', | |
| 'joshkar-ola', | |
| 'mari', | |
| 'mordovia', | |
| 'yakutia', | |
| 'vladikavkaz', | |
| 'kazan', | |
| 'tatarstan', | |
| 'tuva', | |
| 'udmurtia', | |
| 'izhevsk', | |
| 'udm', | |
| 'khakassia', | |
| 'grozny', | |
| 'chuvashia', | |
| 'altai', | |
| 'kuban', | |
| 'krasnoyarsk', | |
| 'marine', | |
| 'vladivostok', | |
| 'stavropol', | |
| 'stv', | |
| 'khabarovsk', | |
| 'khv', | |
| 'amur', | |
| 'arkhangelsk', | |
| 'astrakhan', | |
| 'belgorod', | |
| 'bryansk', | |
| 'vladimir', | |
| 'volgograd', | |
| 'tsaritsyn', | |
| 'vologda', | |
| 'voronezh', | |
| 'vrn', | |
| 'cbg', | |
| 'ivanovo', | |
| 'irkutsk', | |
| 'koenig', | |
| 'kaluga', | |
| 'kamchatka', | |
| 'kemerovo', | |
| 'kirov', | |
| 'vyatka', | |
| 'kostroma', | |
| 'kurgan', | |
| 'kursk', | |
| 'lipetsk', | |
| 'magadan', | |
| 'mosreg', | |
| 'murmansk', | |
| 'nnov', | |
| 'nov', | |
| 'nsk', | |
| 'novosibirsk', | |
| 'omsk', | |
| 'orenburg', | |
| 'oryol', | |
| 'penza', | |
| 'perm', | |
| 'pskov', | |
| 'rnd', | |
| 'ryazan', | |
| 'samara', | |
| 'saratov', | |
| 'sakhalin', | |
| 'yuzhno-sakhalinsk', | |
| 'yekaterinburg', | |
| 'e-burg', | |
| 'smolensk', | |
| 'tambov', | |
| 'tver', | |
| 'tomsk', | |
| 'tsk', | |
| 'tom', | |
| 'tula', | |
| 'tyumen', | |
| 'simbirsk', | |
| 'chelyabinsk', | |
| 'chel', | |
| 'chita', | |
| 'yaroslavl', | |
| 'msk', | |
| 'spb', | |
| 'bir', | |
| 'jar', | |
| 'palana', | |
| 'dudinka', | |
| 'surgut', | |
| 'chukotka', | |
| 'yamal', | |
| 'amursk', | |
| 'baikal', | |
| 'cmw', | |
| 'fareast', | |
| 'jamal', | |
| 'kms', | |
| 'k-uralsk', | |
| 'kustanai', | |
| 'kuzbass', | |
| 'magnitka', | |
| 'mytis', | |
| 'nakhodka', | |
| 'nkz', | |
| 'norilsk', | |
| 'snz', | |
| 'oskol', | |
| 'pyatigorsk', | |
| 'rubtsovsk', | |
| 'syzran', | |
| 'vdonsk', | |
| 'zgrad', | |
| )) | |
| # South Africa: https://en.wikipedia.org/wiki/.za | |
| d['za'] = set(( | |
| 'ac', | |
| 'co', | |
| 'edu', | |
| 'gov', | |
| 'law', | |
| 'mil', | |
| 'net', | |
| 'nom', | |
| 'org', | |
| 'school', | |
| 'web', | |
| 'alt', | |
| 'ngo', | |
| 'tm', | |
| 'agric', | |
| 'grondar', | |
| 'nis', | |
| 'bourse', | |
| 'city', | |
| 'cybernet', | |
| 'db', | |
| 'iaccess', | |
| 'imt', | |
| 'inca', | |
| 'landesign', | |
| 'olivetti', | |
| 'pix', | |
| )) | |
| # South Korea: https://en.wikipedia.org/wiki/.kr#Domains_and_Subdomains | |
| d['kr'] = set(( | |
| 'co', | |
| 'ne', | |
| 'or', | |
| 're', | |
| 'pe', | |
| 'go', | |
| 'mil', | |
| 'ac', | |
| 'hs', | |
| 'ms', | |
| 'es', | |
| 'sc', | |
| 'kg', | |
| 'seoul', | |
| 'busan', | |
| 'daegu', | |
| 'incheon', | |
| 'gwangju', | |
| 'daejeon', | |
| 'ulsan', | |
| 'gyeonggi', | |
| 'gangwon', | |
| 'chungbuk', | |
| 'chungnam', | |
| 'jeonbuk', | |
| 'jeonnam', | |
| 'gyeongbuk', | |
| 'gyeongnam', | |
| 'jeju', | |
| '한글', | |
| )) | 
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment