勉強したことのメモ

webプログラマが勉強したことのメモ。

Rubyでcookie指定した上でスクレイピング

   

Rubyで通販サイトの特定ページから価格部分のみを抽出したかった。そのサイトではページ内の文字や価格表示がcookieの値によって変更されていた。なのでcookie指定した上でスクレイピングをしたい。以下に方法をメモ。

 

ソース

require 'open-uri'
require 'nokogiri'

#cookie指定
cookie_option = "key=value"
uri = "スクレイピングしたいページのURL"
doc = Nokogiri::HTML(open(uri, { 'Cookie' => cookie_option }),nil,"utf-8")

doc.css("#id").each do |price|
	#id内に入っているテキストを出力
	puts price.text

	#空白文字を取り除いて出力
	puts price.text.strip

	#数値に変換して出力
	puts price.text.strip.to_i
end

スクレイピングではNokogiriというライブラリを使うみたい。以下がリファレンス。

http://www.nokogiri.org/ 

 

 

参考

https://www.rubylife.jp/ini/string_class/index11.html

http://d.hatena.ne.jp/gnarl/20081222/1229942677

http://shgam.hatenadiary.jp/entry/2013/11/09/192509

 - Ruby

  関連記事

ServersManのVPSにRuby on Railsを導入する方法

Ruby on Railsを導入した際のメモ。Cens OSのバージョンは6.3 ...

Rubyで基本的な構文のメモ

Railsを勉強する前にRubyの基本的な構文だけは抑えておこうと思ったのでメモ ...

Rubyで日時とファイルの取扱い

Rubyで日時を取得して整形した上で、指定したファイルに追記していきたかった。以 ...

Rubyでサイトの死活管理ツールの作成

Rubyの勉強で何かツールを作ろうと考えた。また、Railsとかは使わず素のRu ...