質問編集履歴

2

タグの追加

2016/11/11 04:37

投稿

dlrowolleh
dlrowolleh

スコア120

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

変更

2016/11/11 04:36

投稿

dlrowolleh
dlrowolleh

スコア120

test CHANGED
File without changes
test CHANGED
File without changes