Zugang zu Regierungsstatistiken ab heute (31. Oktober 2014) Es scheint, dass die Web-API veröffentlicht wurde. http://www.e-stat.go.jp/api/
Eine Liste der verfügbaren Daten finden Sie unter der folgenden URL. Es gibt viel von der Volkszählung bis zur Arbeitsstatistik. http://www.e-stat.go.jp/api/api-info/api-data/
Es sieht interessant aus! Die Platte, die ich dafür verwendet habe.
Greifen Sie zuerst auf diese Seite zu und registrieren Sie sich als Benutzer. http://www.e-stat.go.jp/api/regist-login/ Geben Sie Ihre E-Mail-Adresse und Ihren Namen ein.
Eine Benachrichtigung ist an Ihrer E-Mail-Adresse eingegangen. Klicken Sie darauf, um sie zu aktivieren.
Melden Sie sich als Nächstes an. Holen Sie sich die Anwendungs-ID. Es scheint bis zu 3 IDs pro Person zu sein. Von nun an lautet die Anwendungs-ID xxx.
Das Verfahren ist wie folgt.
#!/usr/bin/env python
#-*- coding: utf-8 -*-
import httplib2
import lxml.etree
import pylab
import matplotlib.font_manager as fm
#Grundeinstellung
h = httplib2.Http('.cache')
key = "xxx"
baseUrl = "http://api.e-stat.go.jp/rest/1.0/app"
statsCode = "00200521"
#Erste Daten für den Regierungsstatistikcode 00200521
# (Volkszählung 1980)Holen Sie sich die Daten-ID von
print "getStatusList..."
cmd = "%s/getStatsList?appId=%s&statsCode=%s"
response, content = h.request(cmd % (baseUrl, key, statsCode))
xml = lxml.etree.fromstring(content)
dataid = xml.xpath('//LIST_INF')[0].attrib["id"]
#Extrahieren Sie die tatsächlichen Daten mit der Daten-ID als Schlüssel
print "getStatusData..."
cmd = "%s/getStatsData?appId=%s&statsDataId=%s"
response, content = h.request(cmd % (baseUrl, key, dataid))
xml = lxml.etree.fromstring(content)
#Extraktion des Kategorienamens
categories = {}
for c in xml.xpath("//CLASS_OBJ"):
categories[c.attrib["id"]] = {"name": c.attrib["name"],
"labels": {}}
print c.attrib["id"]
for label in c.xpath("CLASS"):
print label.attrib["name"], label.attrib["code"]
categories[c.attrib["id"]]["labels"][label.attrib["code"]] = label.attrib["name"]
#Wert extrahieren
values = [{"cat01": v.attrib["cat01"],
"cat02": v.attrib["cat02"],
"cat03": v.attrib["cat03"],
"area": v.attrib["area"],
"value": int(v.text)}
for v in xml.xpath('//VALUE')]
#Altersgruppe(cat03)Aggregation durch
c = categories["cat03"]
data = []
labels = []
for code in sorted(c["labels"].keys())[1:]:
labels.append(c["labels"][code])
data.append(sum([v["value"] for v in values if v["cat03"] == code]))
print data
#Handlung
width = 0.5
x = pylab.arange(len(data))
prop = fm.FontProperties(fname='/Library/Fonts/Osaka.ttf') # for mac
pylab.barh(x, data, width)
pylab.yticks(x + width / 2, labels)
pylab.show()
Klicken Sie hier für Ergebnisse
Offizielles Handbuch http://www.e-stat.go.jp/api/wp/wp-content/uploads/2014/10/API-spec.pdf
Schnittstelle zum Berühren der API des Webs http://www.e-stat.go.jp/api/sample/testform/
Recommended Posts