質問編集履歴
2
タグの追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,10 +4,14 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
###前提・実現したいこと→実行結果が毎回変わってしまう原因
|
7
|
+
###前提・実現したいこと→実行結果が毎回変わってしまう原因・想定していた実行結果をエられるように修正したいので、アドバイスが欲しい。
|
8
8
|
|
9
9
|
アマゾンの本のカテゴリ名を表示するプログラム練習としてをサンプルを参考に作成しました。
|
10
10
|
|
11
|
+
想定していた実行結果が得られませんでした。
|
12
|
+
|
13
|
+
コードをどのように修正すればいいでしょうか?
|
14
|
+
|
11
15
|
###試したこと
|
12
16
|
|
13
17
|
一回目
|
@@ -128,6 +132,8 @@
|
|
128
132
|
|
129
133
|
```Ruby
|
130
134
|
|
135
|
+
#scraping.rb(該当のコード)
|
136
|
+
|
131
137
|
# -*- coding: utf-8 -*-
|
132
138
|
|
133
139
|
require 'anemone'
|
@@ -182,6 +188,78 @@
|
|
182
188
|
|
183
189
|
|
184
190
|
|
191
|
+
```Ruby
|
192
|
+
|
193
|
+
urls = []
|
194
|
+
|
195
|
+
urls.push("http://www.amazon.co.jp/gp/bestsellers/digital-text/2291657051/")
|
196
|
+
|
197
|
+
urls.push("http://www.amazon.co.jp/gp/bestsellers/digital-text/2291905051/")
|
198
|
+
|
199
|
+
urls.push("http://www.amazon.co.jp/gp/bestsellers/books/466298/")
|
200
|
+
|
201
|
+
urls.push("http://www.amazon.co.jp/gp/bestsellers/books/466282/")
|
202
|
+
|
203
|
+
```
|
204
|
+
|
205
|
+
の部分でURLを予め指定していて、
|
206
|
+
|
207
|
+
```Ruby
|
208
|
+
|
209
|
+
Anemone.crawl(urls, :depth_limit => 0) do |anemone|
|
210
|
+
|
211
|
+
anemone.on_every_page do |page|
|
212
|
+
|
213
|
+
# 文字コードをUTF8に変換したうえで、Nokogiriでパース
|
214
|
+
|
215
|
+
doc = Nokogiri::HTML.parse(page.body.toutf8)
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
category = doc.xpath("//*[@id='zg_browseRoot']/ul/li/a").text
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
# カテゴリ名の表示
|
224
|
+
|
225
|
+
sub_category = doc.xpath("//*[@id=\"zg_listTitle\"]/span").text
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
puts category+"/"+sub_category
|
230
|
+
|
231
|
+
end
|
232
|
+
|
233
|
+
```
|
234
|
+
|
235
|
+
の部分で順番にアクセスをして行き、カテゴリ名を取得・表示している(コメント文の通り?)という処理という解釈をしております。
|
236
|
+
|
237
|
+
そうなると、想定していた実行結果と異なります。
|
238
|
+
|
239
|
+
想定が間違っている、あるいはコードが間違っていると思うのですが、
|
240
|
+
|
241
|
+
よく分かりませんでした。
|
242
|
+
|
243
|
+
アドバイスいただけないでしょうか?
|
244
|
+
|
245
|
+
###想定していた実行結果
|
246
|
+
|
247
|
+
```
|
248
|
+
|
249
|
+
$ ruby scraping.rb
|
250
|
+
|
251
|
+
Kindleストア/コンピュータ・IT
|
252
|
+
|
253
|
+
本/コンピュータ・IT
|
254
|
+
|
255
|
+
Kindleストア/ビジネス・経済
|
256
|
+
|
257
|
+
本/ビジネス・経済
|
258
|
+
|
259
|
+
```
|
260
|
+
|
261
|
+
毎回実行しても同じ結果が得られると思っています。
|
262
|
+
|
185
263
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
186
264
|
|
187
265
|
環境はUbuntu15.10
|
@@ -198,6 +276,4 @@
|
|
198
276
|
|
199
277
|
です。
|
200
278
|
|
201
|
-
原因は何が考えられるでしょうか。
|
202
|
-
|
203
279
|
何卒よろしくお願いします。
|
1
変更
test
CHANGED
File without changes
|
test
CHANGED
File without changes
|