Ruby

【Rails】関連(アソシエーション)をもったモデルを構造化してElasticsearchに格納する

RailsでElasticsearchを使ってみたときのメモ. Articles <-> Authorships <-> Authors という関連を持ったモデル群があるときに,例えば記事(Article)を全文検索したら著者名も検索対象に入れたい. gem ‘elasticsearch-rails’ gem ‘elasticsearch-model’ …

RubyでHashをfreezeして定数にしたけど要素にアクセスできなかった

Hashを定数として扱おうと思ったときのメモ. Rubyの定数はミュータブルなので,freezeメソッドを使ってイミュータブルにしておく必要があります. また,ArrayやHashなどを定数にするときには要素もfreezeしなければ,参照先オブジェクトの変化の影響を受け…

AmazonLinux(EC2) + Selenium + Ruby でスクレイピング

Seleniumを使ってAmazonLinux上でスクレイピングをやってみたときのメモ. nokogiri単体とかだとJavascriptで動的にHTMLが書き換わるようなサイトのスクレイピングはできませんが,SeleniumというWebブラウザ操作の自動化ツールを使えばそのようなスクレイピ…

RubyでHTTPクライアント→HTTPプロキシ→サーバの流れを実装してみる

● HTTPクライアント (httpclient) ● HTTPプロキシ (webrick) ● サーバ (CGI) を書いて、HTTP クライアントからプロキシ経由でリクエストを投げてサーバで受け取る、という一連の流れを実装してみようと思った時のメモ。 受け取り側のサーバだけ CGI を…