ISO ALPHA-2 और ISO ALPHA-3 देश कोड की पूरी सूची की तलाश करें?


23

मैं अपने देश कोड वाले देशों की पूरी सूची खोज रहा हूं ।

इस पेज की तरह (पूर्ण और वैध की आवश्यकता है):

http://www.nationsonline.org/oneworld/country_code_list.htm


पर्ल लोकेल :: कोड्स वितरण बहुत व्यापक है और सक्रिय रूप से बनाए रखा गया है।
डेव बेयर्ड

यदि यह खुला डेटा है जिसे आप चाहते हैं तो मुझे लगता है कि पूछने के लिए जगह ओपन डेटा स्टैक एक्सचेंज है।
PolyGeo

जवाबों:


31

आईएसओ 3166-1 आधिकारिक साइट शायद दो अक्षर का कोड के लिए सबसे अद्यतन स्रोत है। दुर्भाग्य से, उनके पास अपनी साइट का हवाला देते हुए अल्फा -3 ऑनलाइन नहीं है :

मैं आईएसओ 3166-1 अल्फा -3 देश कोड आईएसओ 3166 / एमए वेबसाइट पर मुफ्त डाउनलोड के लिए कहां से प्राप्त कर सकता हूं?

कहीं भी नहीं। अल्फा -3 कोड नि: शुल्क उपलब्ध नहीं कराया गया है। आप हमारे आईएसओ स्टोर से अंतर्राष्ट्रीय मानक आईएसओ 3166-1 खरीद सकते हैं। इसमें तीन अक्षर का कोड होता है।

इंटरनेट के युग में थोड़ा अजीब है, लेकिन सौभाग्य से, पूरी सूची और संयुक्त राष्ट्र के आधिकारिक दस्तावेज के साथ एक विकिपीडिया लेख है जो देश कोड के साथ विषय को कवर करता है

अद्यतन करें:

सीआईए साइट पर एक सूची है जिसमें FIPS 10, आईएसओ 3166 अल्फा 2, आईएसओ 3166 अल्फा 3, एसटीएएनएजी और इंटरनेट टीएलडी (जैसे, .il या .uk) है।

लिंक सारांश :

ध्यान दें कि इन सूची में एंटार्टिका जैसी गैर-देशीय संस्थाएँ हैं।


2
यह उत्तर अब पहले लिंक के रूप में 100% उपयोगी है, आधिकारिक साइट, अब एक अच्छी तरह से प्रारूपित कॉपियास्टेबल टेबल में अल्फा -3 कोड नि: शुल्क प्रदान करता है।
डर्क वैन बर्गन 13

@DirkvanBergen यह एक अच्छी चाल है, लेकिन उनकी तालिका अच्छी तरह से स्वरूपित होने से बहुत दूर है। 10-पृष्ठ पृष्ठ पर अंक लगाना, कोई सीएसवी लिंक नहीं।
एडम मटन

4
केवल असाइन किए गए कोड दिखाने के लिए बाईं ओर दिए गए लिंक का उपयोग करें और फिर पृष्ठ को 300 दिखाने के लिए सेट करें और आपके पास यह सब है, पेस्ट को एक्सेल में कॉपी करें और (ab) इसका उपयोग किसी भी तरह से आप चाहें।
डिर्क वैन बर्गन

14

यदि आप अपनी सूची को समय-समय पर अद्यतन करना चाहते हैं, तो आप किसी एक स्रोत को परिमार्जन कर सकते हैं और इसके परिणामों को एक उपयोगी प्रारूप में पार्स कर सकते हैं। मैंने विकिपीडिया देश कोड सूची को CSV में परिवर्तित करने के लिए यहाँ ऐसा किया है :

import csv
import urllib2
from BeautifulSoup import BeautifulSoup

opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]

url = 'http://en.wikipedia.org/wiki/ISO_3166-1'

page = opener.open(url)
soup = BeautifulSoup(page.read())

# "Current Codes" is second table on the page
t = soup.findAll('table', {'class' : 'wikitable sortable'})[1]

# create a new CSV for the output
iso_csv = csv.writer(open('wikipedia-iso-country-codes.csv', 'w'))

# get the header rows, write to the CSV
iso_csv.writerow([th.findAll(text=True)[0] for th in t.findAll('th')])

# Iterate over the table pulling out the country table results. Skip the first 
# row as it contains the already-parsed header information.
for row in t.findAll("tr")[1:]:
    tds = row.findAll('td')
    raw_cols = [td.findAll(text=True) for td in tds]
    cols = []
    # country field contains differing numbers of elements, due to the flag -- 
    # only take the name
    cols.append(raw_cols[0][-1:][0])
    # for all other columns, use the first result text
    cols.extend([col[0] for col in raw_cols[1:]])
    iso_csv.writerow(cols)

मुझे यह तरीका पसंद है। मैंने इस स्क्रिप्ट को CSV फ़ाइल में लिखने के बजाय अधिक हाल के पुस्तकालयों और आउटपुट JSON का उपयोग करने के लिए अद्यतन किया: gis.stackexchange.com/a/151571/54020
गीताकार

7

आप http://download.geonames.org/export/dump/countryInfo.txt में दो और तीन अक्षर कोड के सभी (अधिकांश?) पा सकते हैं - इसमें आईएसओ सांख्यिक और कूल्हों के कोड और अन्य देश की जानकारी भी है।


2
यह एक अच्छा प्रारूप है, लेकिन यह अब पुराना हो चुका है। इसमें दक्षिण सूडान और कोसोवो के कोड नहीं हैं।
मैथ्यू

6

कई लिनक्स वितरणों पर, आइसो कंट्री कोड की एक सूची डिफ़ॉल्ट रूप से स्थापित की जाती है:

/usr/share/xml/iso-codes/iso_3166.xml

फेडोरा / सेंटोस / आरएचईएल / डेबियन के तहत , जिस पैकेज में यह फ़ाइल होती है, उसे iso-codes( प्रोजेक्ट होमपेज ) कहा जाता है ।

XML फ़ाइल में पदानुक्रमित संरचना में मैपिंग शामिल है:

<iso_3166_entries>
    <iso_3166_entry
            alpha_2_code="AF"
            alpha_3_code="AFG"
            numeric_code="004"
            name="Afghanistan"
            official_name="Islamic Republic of Afghanistan" />
[..]

इसे XPath और शेल वन लाइनर के माध्यम से रिकॉर्ड आधारित प्रारूप (जैसे डेटा बेस आयात के लिए) में बदला जा सकता है:

$ xmllint --noout --xpath \
     '//iso_3166_entry/@*[name() = "alpha_2_code" or name()="alpha_3_code"]' \
     /usr/share/xml/iso-codes/iso_3166.xml \
    | sed 's/alpha_2/\nalpha_2/g' \
    | awk -F'"' 'OFS="," {print $2,$4}'

वैकल्पिक रूप से, एक पायथन मॉड्यूल pycountry को उस पैकेज से कोड को पढ़ने और बदलने के लिए उपयोग कर सकता है , जैसे:

$ pip3 install --user pycountry
$ python3
>>> import pycountry
>>> for i in pycountry.countries:
...   print('{},{}'.format(i.alpha2,i.alpha3))
...
AF,AFG
AX,ALA
AL,ALB
[..]

डेबियन स्रोत कोड से salsa.debian.org/iso-codes-team/iso-codes जिसमें .po अनुवाद भी शामिल हैं
polesen

5

मैं pycountry जोड़ना चाहूंगा क्योंकि आपके पास एक अजगर टैग है और यह वही प्रतीत होता है जो आप चाहते थे। डॉक्स से:

आईएसओ देश, उपखंड, भाषा, मुद्रा और लिपि परिभाषाएँ और उनके अनुवाद

pycountry मानकों के लिए ISO डेटाबेस प्रदान करता है:

639 भाषाएँ

3166 देश

3166-3 हटाए गए देश

3166-2 देशों के उपखंड

4217 मुद्राएँ

15924 लिपियों

पैकेज में डेबियन के pkg-isocodes की एक प्रति शामिल है और पायथन एपीआई के माध्यम से डेटा को सुलभ बनाता है।



2

मैंने @ स्कव की स्क्रिप्ट को अपडेट किया जो विकिपीडिया से डेटा को स्क्रैप करता है। यह अब सुंदर सूप 4 के requestsबजाय का उपयोग करता है urllib2और यह CSV फ़ाइल में लिखने के बजाय JSON आउटपुट करता है।

import json
import bs4
import requests

print(json.dumps(
    [
        {
            ['name', 'alpha_2', 'alpha_3', 'numeric'][no]:
            td.find_all()[-1].text
            for no, td in enumerate(row.find_all('td')[:-1])
        }
        for row in bs4.BeautifulSoup(
            requests.get('http://en.wikipedia.org/wiki/ISO_3166-1').text
        ).find('table', {'class': 'wikitable sortable'}).find_all('tr')[1:]
    ],
    indent=4,
    ensure_ascii=False
))

जेएसएन जैसे आउटपुट:

[
    {
        "name": "Afghanistan",
        "alpha_3": "AFG",
        "alpha_2": "AF",
        "numeric": "004"
    },
    {
        "name": "Åland Islands",
        "alpha_3": "ALA",
        "alpha_2": "AX",
        "numeric": "248"
    },

    ...

मुझे यह विधि पसंद है, क्या सूची के बजाय JSON कुंजी को "Alpha_3" या "Alpha_2" में बदलना संभव है?
बेंक

1

आप इस कोड का उपयोग कर सकते हैं https://classic.scraperwiki.com/scrapers/iso_3166-1/edit/ - Lxml, BeautifulSoup से हमेशा तेज है।

इसे यहां कॉपी किया गया है:

import scraperwiki
import lxml.html
import urllib
import datetime
import json

from unidecode import unidecode

def get_html(title):
    raw_json = scraperwiki.scrape("http://en.wikipedia.org/w/api.php?action=parse&format=json&page=" + title)
    html = json.loads(raw_json)['parse']['text']['*']
    return html

page_title = "ISO_3166-1"

html = get_html(page_title)
doc = lxml.html.fromstring(html)

for count, tr in enumerate(doc.cssselect('tr')):
    row = [(td.text_content()) for td in tr.cssselect('td')]
    if len(row)==5:
        for ahref in tr.cssselect('a'):
            detailink = ahref.attrib['href']
            if detailink.find(':',0,len(detailink)) != -1:
                detailink = detailink[6:]
                print detailink
        now = datetime.datetime.now()
        data ={"tmsp_scraped":str(now), "eng_short_name":row[0], "alpha_2_code":row[1], "alpha_3_code":row[2], "numeric_code":row[3], "iso_31662_code":detailink}
        scraperwiki.sqlite.save(unique_keys=["eng_short_name"], data=data, table_name="s_iso31661")

        html = get_html(detailink)
        doc = lxml.html.fromstring(html)

        for count, tr in enumerate(doc.cssselect('tr')):
            row = [td.text_content() for td in tr.cssselect('td')]
            row2 = [td.text_content() for td in tr.cssselect('td')]
            if len(row)>0:
                if row[0][:2] == detailink[11:]:
                    now = datetime.datetime.now()
                    data = {"tmsp_scraped":str(now), "iso_31662_code":detailink, "region_code":row[0], "region_desc":row[1], "region_desc_utf8":row2[1]}
                    scraperwiki.sqlite.save(unique_keys=["iso_31662_code","region_code"], data=data, table_name="s_iso31662_region")

एक और अच्छी लाइब्रेरी: https://github.com/neuront/python-iso3166



1

मुझे github repo पर बहुत अच्छा डेटाबेस मिला - https://github.com/stefangabos/world_countries

भंडार लेखन के समय से मिलकर बनता है json, csv, sqlअलग देश कोड के साथ 22 भाषाओं के लिए फ़ाइलें: ISO 3166-1 अल्फ़ा 3, आईएसओ 3166-1 अल्फ़ा -2 और पूरा नाम।

डेटाबेस को नियमित रूप से अपडेट किया गया लगता है



0

php विकिपीडिया लेख से 3 अक्षर आईएसओ देश कोड के साथ एक अर्रे

मैंने विकिपीडिया से सूची को कॉपी और पेस्ट किया और सरणी बनाई। शायद यह कोड किसी को कुछ समय बचाने में मदद कर सकता है, जो देश कोड की एक सरणी बनाना चाहता है। मैं अजगर से परिचित नहीं हूं, लेकिन सरणी निर्माण php के समान होना चाहिए।

$Countries=array();

array_push($Countries,"ABW");
array_push($Countries,"AFG");
array_push($Countries,"AGO");
array_push($Countries,"AIA");
array_push($Countries,"ALA");
array_push($Countries,"ALB");
array_push($Countries,"AND");
array_push($Countries,"ARE");
array_push($Countries,"ARG");
array_push($Countries,"ARM");
array_push($Countries,"ASM");
array_push($Countries,"ATA");
array_push($Countries,"ATF");
array_push($Countries,"ATG");
array_push($Countries,"AUS");
array_push($Countries,"AUT");
array_push($Countries,"AZE");
array_push($Countries,"BDI");
array_push($Countries,"BEL");
array_push($Countries,"BEN");
array_push($Countries,"BES");
array_push($Countries,"BFA");
array_push($Countries,"BGD");
array_push($Countries,"BGR");
array_push($Countries,"BHR");
array_push($Countries,"BHS");
array_push($Countries,"BIH");
array_push($Countries,"BLM");
array_push($Countries,"BLR");
array_push($Countries,"BLZ");
array_push($Countries,"BMU");
array_push($Countries,"BOL");
array_push($Countries,"BRA");
array_push($Countries,"BRB");
array_push($Countries,"BRN");
array_push($Countries,"BTN");
array_push($Countries,"BVT");
array_push($Countries,"BWA");
array_push($Countries,"CAF");
array_push($Countries,"CAN");
array_push($Countries,"CCK");
array_push($Countries,"CHE");
array_push($Countries,"CHL");
array_push($Countries,"CHN");
array_push($Countries,"CIV");
array_push($Countries,"CMR");
array_push($Countries,"COD");
array_push($Countries,"COG");
array_push($Countries,"COK");
array_push($Countries,"COL");
array_push($Countries,"COM");
array_push($Countries,"CPV");
array_push($Countries,"CRI");
array_push($Countries,"CUB");
array_push($Countries,"CUW");
array_push($Countries,"CXR");
array_push($Countries,"CYM");
array_push($Countries,"CYP");
array_push($Countries,"CZE");
array_push($Countries,"DEU");
array_push($Countries,"DJI");
array_push($Countries,"DMA");
array_push($Countries,"DNK");
array_push($Countries,"DOM");
array_push($Countries,"DZA");
array_push($Countries,"ECU");
array_push($Countries,"EGY");
array_push($Countries,"ERI");
array_push($Countries,"ESH");
array_push($Countries,"ESP");
array_push($Countries,"EST");
array_push($Countries,"ETH");
array_push($Countries,"FIN");
array_push($Countries,"FJI");
array_push($Countries,"FLK");
array_push($Countries,"FRA");
array_push($Countries,"FRO");
array_push($Countries,"FSM");
array_push($Countries,"GAB");
array_push($Countries,"GBR");
array_push($Countries,"GEO");
array_push($Countries,"GGY");
array_push($Countries,"GHA");
array_push($Countries,"GIB");
array_push($Countries,"GIN");
array_push($Countries,"GLP");
array_push($Countries,"GMB");
array_push($Countries,"GNB");
array_push($Countries,"GNQ");
array_push($Countries,"GRC");
array_push($Countries,"GRD");
array_push($Countries,"GRL");
array_push($Countries,"GTM");
array_push($Countries,"GUF");
array_push($Countries,"GUM");
array_push($Countries,"GUY");
array_push($Countries,"HKG");
array_push($Countries,"HMD");
array_push($Countries,"HND");
array_push($Countries,"HRV");
array_push($Countries,"HTI");
array_push($Countries,"HUN");
array_push($Countries,"IDN");
array_push($Countries,"IMN");
array_push($Countries,"IND");
array_push($Countries,"IOT");
array_push($Countries,"IRL");
array_push($Countries,"IRN");
array_push($Countries,"IRQ");
array_push($Countries,"ISL");
array_push($Countries,"ISR");
array_push($Countries,"ITA");
array_push($Countries,"JAM");
array_push($Countries,"JEY");
array_push($Countries,"JOR");
array_push($Countries,"JPN");
array_push($Countries,"KAZ");
array_push($Countries,"KEN");
array_push($Countries,"KGZ");
array_push($Countries,"KHM");
array_push($Countries,"KIR");
array_push($Countries,"KNA");
array_push($Countries,"KOR");
array_push($Countries,"KWT");
array_push($Countries,"LAO");
array_push($Countries,"LBN");
array_push($Countries,"LBR");
array_push($Countries,"LBY");
array_push($Countries,"LCA");
array_push($Countries,"LIE");
array_push($Countries,"LKA");
array_push($Countries,"LSO");
array_push($Countries,"LTU");
array_push($Countries,"LUX");
array_push($Countries,"LVA");
array_push($Countries,"MAC");
array_push($Countries,"MAF");
array_push($Countries,"MAR");
array_push($Countries,"MCO");
array_push($Countries,"MDA");
array_push($Countries,"MDG");
array_push($Countries,"MDV");
array_push($Countries,"MEX");
array_push($Countries,"MHL");
array_push($Countries,"MKD");
array_push($Countries,"MLI");
array_push($Countries,"MLT");
array_push($Countries,"MMR");
array_push($Countries,"MNE");
array_push($Countries,"MNG");
array_push($Countries,"MNP");
array_push($Countries,"MOZ");
array_push($Countries,"MRT");
array_push($Countries,"MSR");
array_push($Countries,"MTQ");
array_push($Countries,"MUS");
array_push($Countries,"MWI");
array_push($Countries,"MYS");
array_push($Countries,"MYT");
array_push($Countries,"NAM");
array_push($Countries,"NCL");
array_push($Countries,"NER");
array_push($Countries,"NFK");
array_push($Countries,"NGA");
array_push($Countries,"NIC");
array_push($Countries,"NIU");
array_push($Countries,"NLD");
array_push($Countries,"NOR");
array_push($Countries,"NPL");
array_push($Countries,"NRU");
array_push($Countries,"NZL");
array_push($Countries,"OMN");
array_push($Countries,"PAK");
array_push($Countries,"PAN");
array_push($Countries,"PCN");
array_push($Countries,"PER");
array_push($Countries,"PHL");
array_push($Countries,"PLW");
array_push($Countries,"PNG");
array_push($Countries,"POL");
array_push($Countries,"PRI");
array_push($Countries,"PRK");
array_push($Countries,"PRT");
array_push($Countries,"PRY");
array_push($Countries,"PSE");
array_push($Countries,"PYF");
array_push($Countries,"QAT");
array_push($Countries,"REU");
array_push($Countries,"ROU");
array_push($Countries,"RUS");
array_push($Countries,"RWA");
array_push($Countries,"SAU");
array_push($Countries,"SDN");
array_push($Countries,"SEN");
array_push($Countries,"SGP");
array_push($Countries,"SGS");
array_push($Countries,"SHN");
array_push($Countries,"SJM");
array_push($Countries,"SLB");
array_push($Countries,"SLE");
array_push($Countries,"SLV");
array_push($Countries,"SMR");
array_push($Countries,"SOM");
array_push($Countries,"SPM");
array_push($Countries,"SRB");
array_push($Countries,"SSD");
array_push($Countries,"STP");
array_push($Countries,"SUR");
array_push($Countries,"SVK");
array_push($Countries,"SVN");
array_push($Countries,"SWE");
array_push($Countries,"SWZ");
array_push($Countries,"SXM");
array_push($Countries,"SYC");
array_push($Countries,"SYR");
array_push($Countries,"TCA");
array_push($Countries,"TCD");
array_push($Countries,"TGO");
array_push($Countries,"THA");
array_push($Countries,"TJK");
array_push($Countries,"TKL");
array_push($Countries,"TKM");
array_push($Countries,"TLS");
array_push($Countries,"TON");
array_push($Countries,"TTO");
array_push($Countries,"TUN");
array_push($Countries,"TUR");
array_push($Countries,"TUV");
array_push($Countries,"TWN");
array_push($Countries,"TZA");
array_push($Countries,"UGA");
array_push($Countries,"UKR");
array_push($Countries,"UMI");
array_push($Countries,"URY");
array_push($Countries,"USA");
array_push($Countries,"UZB");
array_push($Countries,"VAT");
array_push($Countries,"VCT");
array_push($Countries,"VEN");
array_push($Countries,"VGB");
array_push($Countries,"VIR");
array_push($Countries,"VNM");
array_push($Countries,"VUT");
array_push($Countries,"WLF");
array_push($Countries,"WSM");
array_push($Countries,"YEM");
array_push($Countries,"ZAF");
array_push($Countries,"ZMB");
array_push($Countries,"ZWE");

0

यदि आप देश सूची को हार्ड कोड नहीं करना चाहते हैं (जो मैं अनुशंसा नहीं करता, क्योंकि यह बहुत परिवर्तन करता है) इस URL का उपयोग करें जिससे आपको JSON प्रारूप में 2-अक्षर कोड और देश का नाम मिले : annsystem.com/api / getCountry

इसमें संयुक्त राष्ट्र और गैर-संयुक्त राष्ट्र सदस्य देश भी शामिल हैं।

विवरण और मापदंडों के लिए यहां देखें: flossk.org/en/blog/country-list-good-all


0

यदि कोई R उपयोगकर्ता इस थ्रेड पर ठोकर खाता है, तो यहां R समाधान है:

countrycodeपैकेज कई अलग स्वरूपों के देश कोड की एक पूरी सूची है। पैकेज प्रलेखन से:

निम्नलिखित कोडिंग योजनाओं का समर्थन करता है: सहसंबंधी युद्ध चरित्र, CoW-संख्यात्मक, ISO3-character, ISO3-numer, ISO2-character, IMF संख्यात्मक, अंतर्राष्ट्रीय ओलंपिक समिति, FIPS 10-4, FAO संख्यात्मक, संयुक्त राष्ट्र संख्यात्मक, विश्व बैंक चरित्र आधिकारिक अंग्रेजी लघु देश के नाम (आईएसओ), महाद्वीप, क्षेत्र।

पैकेज अलग-अलग कोड के बीच भी परिवर्तित होगा और नियमित अभिव्यक्ति का उपयोग करके मानक या गैर-मानक नामों से देशों की पहचान कर सकता है।

library(countrycode)
# data frame of country names and codes
head(countrycode_data)
# convert from CoW to ISO3
countrycode(c("ALG","ALB","UKG","CAN","USA"), origin = "cowc", destination = "iso3c")
# ISO2 code from non-standard name
countrycode("Britain", "country.name", "iso2c")

0

सिर्फ़ विकिपीडिया से डेटा निकालने के लिए Microsoft Excel Power BI टूल का उपयोग करें। पेज के एक एक्सेल स्क्रेप को बनाने में 30 सेकंड से अधिक का समय लगता है और फिर इसे आप जो भी स्वरूप पसंद करते हैं, उसे सहेज सकते हैं।


0

यह एक पुराना धागा है, लेकिन इसके लिए इसके लायक अद्यतन है।

अल्फा 2 और अल्फा 3 कंट्री कोड्स पर फॉरवर्ड / रिवर्स लुक अप, प्रति देश एक भारी वस्तु देता है जिसमें फोन कोड, मुद्रा, आईएसओ जानकारी, आईओसी जानकारी, डाक कोड, और अधिक शामिल हैं: https://github.com/rolinger/iso-country डाटा-मान्यता / सेटिंग्स


-2

देशों की जानकारी (नाम, ISO 2 char, ISO 3 char, ...) को पुनः प्राप्त करने के लिए आप इस NuGet पैकेज का उपयोग इस्ंमॉन्गक्क्क्लाउड . com / geography पर कर सकते हैं ।

यह एक निशुल्क .Net क्लाइंट है जो किसी RESTful API से जानकारी प्राप्त करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.