回答編集履歴

7

修正

2017/08/06 08:57

投稿

退会済みユーザー
test CHANGED
@@ -38,9 +38,9 @@
38
38
 
39
39
  word = gets.chomp.encode('UTF-8')
40
40
 
41
- url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
41
+ url = "XXXXXXXXXXXXXXXXXXXXXXXXX"
42
42
 
43
- puts open(url, &:read).toutf8.scan(%r|<a href="http://kanji.jitenon.jp/[^/]+/\d+.html">(.+)</a>|)
43
+ puts open(url, &:read).toutf8.scan(%r|XXXXXXXXXXXXXXXXXXXXX|)
44
44
 
45
45
  ```
46
46
 
@@ -84,7 +84,7 @@
84
84
 
85
85
  word = ARGV[0].encode('UTF-8') # <= あめ
86
86
 
87
- url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
87
+ url = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
88
88
 
89
89
  html = open(url, &:read)
90
90
 
@@ -130,7 +130,7 @@
130
130
 
131
131
  word = ARGV[0].encode('UTF-8') # <= あめ
132
132
 
133
- url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
133
+ url = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
134
134
 
135
135
  agent = Mechanize.new
136
136
 

6

修正

2017/08/06 08:57

投稿

退会済みユーザー
test CHANGED
@@ -166,7 +166,7 @@
166
166
 
167
167
  #補足
168
168
 
169
- ローマ字から漢字検索したい場合は
169
+ ローマ字から漢字検索したい場合は
170
170
 
171
171
  [ローマ字とひらがなを変換する](http://rubytips86.hatenablog.com/entry/2014/03/20/095548)
172
172
 

5

修正

2017/08/05 03:43

投稿

退会済みユーザー
test CHANGED
@@ -161,3 +161,15 @@
161
161
  ```
162
162
 
163
163
  熟語には変換できません。
164
+
165
+
166
+
167
+ #補足
168
+
169
+ ローマ字から漢字を検索したい場合は
170
+
171
+ [ローマ字とひらがなを変換する](http://rubytips86.hatenablog.com/entry/2014/03/20/095548)
172
+
173
+ こちらのページを参考に、一旦ひらがなに変換して
174
+
175
+ 検索することで対応します。

4

修正

2017/08/05 03:42

投稿

退会済みユーザー
test CHANGED
@@ -159,3 +159,5 @@
159
159
 
160
160
 
161
161
  ```
162
+
163
+ 熟語には変換できません。

3

修正

2017/08/03 15:44

投稿

退会済みユーザー
test CHANGED
@@ -82,7 +82,7 @@
82
82
 
83
83
 
84
84
 
85
- word = ARGV[0].encode('UTF-8')
85
+ word = ARGV[0].encode('UTF-8') # <= あめ
86
86
 
87
87
  url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
88
88
 
@@ -128,7 +128,7 @@
128
128
 
129
129
 
130
130
 
131
- word = ARGV[0].encode('UTF-8')
131
+ word = ARGV[0].encode('UTF-8') # <= あめ
132
132
 
133
133
  url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
134
134
 

2

修正

2017/08/03 15:39

投稿

退会済みユーザー
test CHANGED
@@ -17,6 +17,8 @@
17
17
 
18
18
 
19
19
  作ってみました。
20
+
21
+ 正規表現バージョン。
20
22
 
21
23
  ```Ruby
22
24
 
@@ -59,3 +61,101 @@
59
61
 
60
62
 
61
63
  ```
64
+
65
+ xpathバージョン。
66
+
67
+ ```Ruby
68
+
69
+ # encoding: utf-8
70
+
71
+
72
+
73
+ require 'open-uri'
74
+
75
+ require 'certified'
76
+
77
+ require 'uri'
78
+
79
+ require 'nokogiri'
80
+
81
+ require 'kconv'
82
+
83
+
84
+
85
+ word = ARGV[0].encode('UTF-8')
86
+
87
+ url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
88
+
89
+ html = open(url, &:read)
90
+
91
+ doc = Nokogiri::HTML.parse(html.toutf8)
92
+
93
+
94
+
95
+ doc.xpath('//span[@class="searchyomitbspan1"]').each do |node|
96
+
97
+ puts node.xpath('a').text
98
+
99
+ end
100
+
101
+ ```
102
+
103
+ ```
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+ ```
118
+
119
+ Mechanizeバージョン。
120
+
121
+ ```Ruby
122
+
123
+ # encoding: utf-8
124
+
125
+
126
+
127
+ require 'mechanize'
128
+
129
+
130
+
131
+ word = ARGV[0].encode('UTF-8')
132
+
133
+ url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
134
+
135
+ agent = Mechanize.new
136
+
137
+
138
+
139
+ agent.get(url).search('//span[@class="searchyomitbspan1"]').each do |node|
140
+
141
+ puts node.search('a').text
142
+
143
+ end
144
+
145
+ ```
146
+
147
+ ```
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+
158
+
159
+
160
+
161
+ ```

1

修正

2017/08/03 15:36

投稿

退会済みユーザー
test CHANGED
@@ -13,3 +13,49 @@
13
13
  という方法を思いつきました。
14
14
 
15
15
  相手のサイト様は場合によってはとても困るかも。
16
+
17
+
18
+
19
+ 作ってみました。
20
+
21
+ ```Ruby
22
+
23
+ # encoding: utf-8
24
+
25
+
26
+
27
+ require 'open-uri'
28
+
29
+ require 'certified'
30
+
31
+ require 'uri'
32
+
33
+ require 'kconv'
34
+
35
+
36
+
37
+ word = gets.chomp.encode('UTF-8')
38
+
39
+ url = "http://kanji.jitenon.jp/cat/search.php?getdata=#{URI.escape(word)}&search=fpart&search2=twin"
40
+
41
+ puts open(url, &:read).toutf8.scan(%r|<a href="http://kanji.jitenon.jp/[^/]+/\d+.html">(.+)</a>|)
42
+
43
+ ```
44
+
45
+ ```Ruby
46
+
47
+ あめ
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ ```