![http://www.compasswebpublisher.com/php/www-mechanize-for-php](https://cdn-ak-scissors.b.st-hatena.com/image/square/b5a4577c60e2db089e48c5fbb7a3603d12988d83/height=288;version=1;width=512/https%3A%2F%2Fhmgsearch.com%2Fwp-content%2Fuploads%2F2021%2F01%2Fheader-hmg-1024x390.jpg)
rubyでwebにアクセスするライブラリが複数あります。 標準のライブラリ open-uri Net::HTTP gemライブラリ mechanize curb(curl) どんなときにどれを使ったらいいんでしょうね?ということで簡単にですがそれぞれの特徴を調べてみました。 open-uri この中で一番簡単なライブラリ。openメソッドを拡張して、webページを普通のファイルのようにオープンできるようにします。詳しい使い方は下記参考。 open-uri - Rubyリファレンスマニュアル Net::HTTP getの他にpostやリダイレクトにも対応。下記のように、ブロックの中でサーバ内のコンテンツにアクセスするように書くので、同一サーバに何度もアクセスする場合はopen-uriより便利。 require 'net/http' Net::HTTP.version_1_2 Net::HTT
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
Mechanizeがときどき日本語のページで文字化けするので、原因と解決方法を調べてみた。確認したバージョンは次の通り。 Ruby 1.9.1-p378と1.8.6-p111(Ubuntuのパッケージ) Mechanize 1.0.0 Nokogiri 1.4.2 libxml2 2.6.31(Ubuntuのパッケージ) エンコーディングの扱い Mechanizeの内部エンコーディングはUTF-8に固定されていて、ドキュメントのエンコーディングが何であれUTF-8に変換される。これはMechanizeがHTMLパーサに使っているNokogiriの仕様であり、Nokogiriが依存しているlibxml2の仕様でもある。そういう事情でMechanizeから取り出した文字列はすべてUTF-8になっている。Ruby 1.9だとString#encodingはEncoding::UTF_8にセットさ
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
スクレイピングのチュートリアルを書いてみた。 参考:http://nokogiri.rubyforge.org/nokogiri/Nokogiri.html まだまだたくさんのクラスやメソッドがあるが(読んでない)、HTMLのスクレイピングに限定すれば多分これくらいで十分。 2014-02-16追記 なんかたくさんブックマークされていることに気づいたので、サンプルコードのRuby1.9/2対応のアップデート。 Mechanize周りも修正。WWW::Mechanize → Mechanize 等 (0) 前提知識 Ruby、HTML、DOM、CSSセレクタまたはXPath (1) クラス構造の理解 Nokogiri::HTML::Document < Nokogiri::XML::Document < Nokogiri::XML::Node < Object Nokogiri::XML::
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く