Ruby on Railsを学ぶ vol3 ~ヒーローと俳句~

今回は前回作成したアプリを Heroku というサービスを使って一般公開していきます。 今回の目標 Herokuを知る アプリを一般公開する 1. Herokuを知る Herokuとは一言で言うと PaaS(Platform as a Service)環境です。 Herokuを使うと何がいいのかというと、…

Ruby on Railsを学ぶ vol2 ~環境設定とhello, world!~

今回は、 Railsの環境設定と画面に「hello, world」と表示するアプリを作りたいと思います。 今回の目標 環境設定 hello, world! 1. 環境設定 今さらですが、私はMacを使っているので Macで開発を進めていきます。 まずはrailsのインストール $ gem install …

Ruby on Railsを学ぶ vol1 ~今日からRailsエンジニア~

今日からRuby on Rails(以後Railsと書きます)の勉強をしていきます。 記事のタイトルは「Ruby on Railsを学ぶ」としてみました。 何でRailsを勉強したいかというと、 当ブログのタイトルにもあるように 1人でアプリを作れるように なるためです。 今、子育て…

2016年になりました。

明けましておめでとうございます。 久しぶりの更新で大変申し訳ない気持ちでいっぱいです。 前回の更新から約2ヶ月経ってしまいました。 新年早々言い訳になりますが、11月と12月は仕事が忙しく なかなか子育てアプリの開発に専念できませんでした。 そして…

子育て情報アプリを作れるように vol13 ~放浪する~

前回までで、 サイトをクロールして 子育て情報を収集し、 タグを自動生成して データベースに保存する ところまで終わりました。 次は このクローラーをherokuというサービスを利用して 定期的に実行させようと思い、 herokuの使い方について調べていました…

子育て情報アプリを作れるように vol12 ~タグを自動生成する その2~

前回の続きになります。 前回の記事投稿後、 @dkfjさんよりご指導頂きました。ありがとうございます。 Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例作者: るびきち,佐々木拓郎出版社/メーカー: SBクリエイティブ発売日: 2014/08/25メディ…

子育て情報アプリを作れるように vol11 ~タグを自動生成する~

今回は、 クローラーで収集したデータにタグ情報を追加していきます。 で、前々から使ってみたいと思っていた Mecabという形態素解析器を使いたいと思います。 形態素解析というのは、 簡単に言うと文章を品詞単位に分解してくれるものです。 詳しく言うと・…

子育て情報アプリを作れるように vol10 ~yamlを使ってみる~

今回はYamlファイルを使って クローラーの検索キーワードを読み込めるようにします。 多分、ヤムルと呼びます。 Yamlについては http://magazine.rubyist.net/?0009-YAML#l2 に詳しく書かれています。 今回の目標 Yamlを理解する Yamlファイルを読み込む 1. …

子育て情報アプリを作れるように vol9 ~同じデータを何度も保存しない~

前回、クローラーで収集したデータを データベースへ保存する所まで実装しました。 しかしながら、前回のプログラムだと クローラーを実行する度に同じデータをデータベースに保存してしまいます。 そこで、今回は同じデータを保存しないように 重複チェック…

子育て情報アプリを作れるように vol8 ~収集したデータを保存する~

今回はクローラーが収集したデータを データベースに保存していきたいと思います。 データベースにはPostgreSQLを使っていきます。 PostgreSQLを使う理由は、 Herokuというサービスと連携するのに都合が良さそうだからです。 Herokuについては実際に使う時に…

子育て情報アプリを作れるように vol7 ~少し作り直し~

今回はクローラーを作るのは一旦やめて、 ソースコードの見直しを行います。 今回の目標 構造を見直す 1. 構造を見直す 今までのファイル構成は、 こんな感じでした。 これでも問題なく動いているのですが、 いくつか気になる点が。 * movie-site.rbやcook-s…

子育て情報アプリを作れるように vol6 ~Yahoo知恵袋のクローラー~

今回はヤフー知恵袋のクローラーを作っていきます。 子育ての悩みって尽きないですよね。 そんな時にヤフー知恵袋を見ると同じ悩みを持った人って結構います。 なので、そういった情報を収集する事で 少しでも悩みを解決しようという目的です。 今回の目標 …

子育て情報アプリを作れるように vol5 ~cookpadのクローラー~

今回は、 子育てと言えば、赤ちゃん! 赤ちゃんと言えば、離乳食! ということで、 クックパッド(cook pad)のサイトから 料理の情報を取ってくるクローラーを作っていきます。 今回の目標 cookpadから料理情報を取得する 1. cookpadから料理情報を取得する…

子育て情報アプリを作れるように vol4 ~Youtubeのクローラー~

前回からかなり時間が経ってしまいました。 言い訳すると、 仕事が忙しかったり、 子育てでいっぱいいっぱいだったり、 お盆休みだったからです。 すみません… 今回は、Youtubeから子育て動画を取得してみたいと思います。 今回の目標 簡単に全体を設計する …

子育て情報アプリを作れるように vol3 ~開発する前に~

今回は、実際にアプリを作るために必要な前準備をしていきます。 今回の目標 gemを管理する環境を作る 1. gemを管理する環境を作る (1) まず初めに、bundlerをインストールします。 $ gem install bundler (2) 次に、前回クローンしてきたリポジトリのフォル…

子育て情報アプリを作れるように vol2 ~プロジェクトの作成~

まずは、子育てアプリのプロジェクト(リポジトリ)を作成していきます。 完全に、1人プロジェクトですが、 資産管理目的で、GitHubを使っていきたいと思います。 今回の目標 GitHubでリポジトリを作成する ローカルにクローンする 1. GitHubでリポジトリを作…

子育て情報アプリを作れるように vol1 ~なりたい~

前回、書籍「Rubyによるクローラー開発技法」(以下クロ本)を一気読みしました。 で、今回から クローラー技術を使ったオリジナルアプリを作っていこうと思います その名も 子育て情報アプリ です。 簡単に言うと、 子育てに関係する情報(食事、遊び、病気、…

Rubyによるクローラー開発技法 vol7 ~一気に読んじゃった~

前回でchapter2まで終わりました。 今回からchapter3 と言いたいところなんですが、 実は クロ本が面白すぎて 最後まで一気に読んでしまいました。 (ちょっとだけ飛ばしたところもあります) 一気に読んだ時の私の脳内を解説すると chapter3 チャプター3は「…

Rubyによるクローラー開発技法 vol6 ~自動巡回とページの取得~

今回は、 chapter2のリンク抽出機能を勉強していきます。 やる事は ヤフーのトップページを開く ページ内のAタグを抽出する Aタグのhref属性からURLを取得する 取得したURLを使ってページ遷移を行う スクリーンショットを撮って保存する です。 とりあえず、…

Rubyによるクローラー開発技法 vol5 ~カピバラさんと出会う~

今回は勉強に入る前に一つ。 今まで読み進めてきた 「Rubyによるクローラー開発技法」 なんですが、 「本」と書いたり 「書籍」と書いたりと、 統一感がなかったので わかりやすい呼び名を考える事にしました。 できるだけ短い方が良いので Rubyによるクロー…

Rubyによるクローラー開発技法 vol4 ~nokogiri~

前回はWebサイトをクロールするところまで書いたので、 次は取得したページを解析して、必要な情報を抜き出します。 必要な情報を抜き出すには、 nokogiriというライブラリを使えばいいみたいです。 使い方は簡単で、 nokogiriライブラリを使えるようにする …

Rubyによるクローラー開発技法 vol3 ~他人よりまず自分を疑う~

chapter2を進めていきましょう。 chapter2では、「Anemone」というライブラリを使って Amazonのウェブサイトから書籍のランキング情報を取得する クローラーを作っていくようです。 ちなみに、Anemoneってどういう意味?と思って 調べてみたら、植物の名前ぽ…

やっぱりAtomにしよう・・

みなさんエディタは何を使っていますか? 私は今まで、Vimというエディタを使っていました。 使っていたと言いましたが、 実際には使い始めたばかりで、 使いこなしていた訳ではありません。ど素人です。 で、今まではVimを使いこなそうと意気込んでいたのに…

Rubyによるクローラー開発技法 vol2 ~基本的な書き方を学ぶ~

chapter1の続きを読み進めます。 chapter1では最終的に、 あるサイトのトピックス情報を取得し、 RSS配信するところまでやります。 完成するとこんな感じ 本通りに書き写しただけと言われればそこまでなんですが、 自分の手で書いたものが動くとちょっと感動…

Rubyによるクローラー開発技法 vol1 ~正規表現と配列の操作を学ぶ~

本のChapter1から進めます。 Chapter1のタイトルは「10分クローラーの作成」となっています。 いきなり、ワクワクさせるタイトルです。 まずは写経するところから。 本通りに作っていきます。 10分では作れませんでした笑。 というのもRubyの各種メソッドに…

Rubyによるクローラー開発技法

RubyWarriorを攻略してから はや5日。 次は何をやろうか考えてました。 何をやろうか考えてる時って こーゆー事したい。とか こんな事できたら面白そう。とか 色々考えて、夢(妄想)がふくらみますね。 この時間って本当楽しいです。 ただ、残念な事に自身の…

RubyWarrior完全攻略~中級編~ Level9

Level9です。 敵の数からして、いかにもラストステージっぽいです。 気合入れてやっていきましょう! Never before have you seen a room so full of sludge. Start the fireworks! 決して前に、あなたは、汚泥のようにいっぱいの部屋を見てきました。花火を…

RubyWarrior完全攻略~中級編~ Level8

Level8です。 何か簡単そうに見える。 You discover a satchel of bombs which will help when facing a mob of enemies. あなたは敵の暴徒に直面したときに役立ちます爆弾のかばんを発見します。 Detonate a bomb when you see a couple enemies ahead of y…

RubyWarrior完全攻略~中級編~ Level7

Level7です。 Level9が最後と考えると、あと少しで完全攻略です(たぶん)。 Another ticking sound, but some sludge is blocking the way. 他の音を刻むが、いくつかの汚泥が道をブロックしています。 Quickly kill the sludge and rescue the captive befor…

RubyWarrior完全攻略~中級編~ Level6

Level6やっていきます。 What's that ticking? Some captives have a timed bomb at their feet! そのティッキングは何ですか?いくつかの捕虜は、自分の足で時限爆弾を持っています! Hurry and rescue captives first that have space.ticking?, they'll s…