teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

テキスト修正

2018/06/30 01:10

投稿

jun68ykt
jun68ykt

スコア9058

answer CHANGED
@@ -47,7 +47,7 @@
47
47
 
48
48
  puts result
49
49
  ```
50
- 出力結果:
50
+ 出力結果(改行とインデントを適当に入れてます)
51
51
  ```
52
52
  {
53
53
  "version" => "ekidata.jp pref api 1.0",

1

テキスト修正

2018/06/30 01:10

投稿

jun68ykt
jun68ykt

スコア9058

answer CHANGED
@@ -25,4 +25,50 @@
25
25
 
26
26
  以上参考になれば幸いです。
27
27
 
28
- ※この回答を書いている時点でも、http://www.ekidata.jp/api/p/13.json でJSONが返ってきていませんでした。
28
+ ※この回答を書いている時点でも、http://www.ekidata.jp/api/p/13.json でJSONが返ってきていませんでした。
29
+
30
+ ---
31
+ **補足**
32
+
33
+ または、xmlsimple を使って、ご質問に上げられているコードとほぼ同じように書いたものが以下です。
34
+
35
+ ```
36
+ gem install xml-simple
37
+ ```
38
+
39
+ ```ruby
40
+ require 'xmlsimple'
41
+ require 'uri'
42
+ require 'net/http'
43
+
44
+ uri = URI.parse('http://www.ekidata.jp/api/p/13.xml')
45
+ xml = Net::HTTP.get(uri)
46
+ result = XmlSimple.xml_in(xml)
47
+
48
+ puts result
49
+ ```
50
+ 出力結果:
51
+ ```
52
+ {
53
+ "version" => "ekidata.jp pref api 1.0",
54
+ "pref" => [{
55
+ "code" => ["13"],
56
+ "name" => ["東京都"]
57
+ }],
58
+ "line" => [{
59
+ "line_cd" => ["11301"],
60
+ "line_name" => ["JR東海道本線(東京~熱海)"]
61
+ }, {
62
+ "line_cd" => ["11302"],
63
+ "line_name" => ["JR山手線"]
64
+ },
65
+ ……
66
+ {
67
+ "line_cd" => ["99340"],
68
+ "line_name" => ["北総鉄道北総線"]
69
+ }, {
70
+ "line_cd" => ["99342"],
71
+ "line_name" => ["日暮里・舎人ライナー"]
72
+ }]
73
+ }
74
+ ```