現在クローラーを作成してしまいます。
複数のサイトでクローリング処理は成功しているのですが、下記のURLに対してクローリング処理を実行したところ、なぜかコンソールに404 Not Found が出力されて要素の取得がうまくいきません。
スクレイピング先URL
https://www.brunarosso.com/s/designers/fendi/?category=men
上記URLにアクセスすると普通にコンテンツは表示されるのですが、nokogiriでスクレイピングを行うと要素の取得ができていません。下記が実行したコードです。
Ruby
1url = "https://www.brunarosso.com/s/designers/fendi/" 2 3charset = nil 4begin 5 html = open(url) do |f| 6 charset = f.charset 7 f.read 8 end 9 rescue OpenURI::HTTPError => e 10 puts e 11end 12doc = Nokogiri::HTML.parse(html, nil, charset) 13puts doc
上記のコードを実行した結果、コンソー内の出力結果は以下のようになります。
Ruby
1404 Not Found 2<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"> 3
普通は変数docの中にページの情報が全て代入されるはずなのですが、こちらのURLが対象だと上手くいきません。
どなたかこちらの問題に詳しい方がいらっしゃいましたら、ご教授をお願い致します。
コマンドラインからcurl 等を利用してアクセスすると HTML は取得できますか?
回答2件
あなたの回答
tips
プレビュー