「JS+Node.jsによるWebクローラー/ネットエージェント開発テクニック」個人的学習ノート(その0)

スクレイピング好きの[twitter:@riocampos]です。情報大好き。
Rubyist なので、いままでは Ruby を使って open-url で取ってきた HTML を Nokogiri でぶった切ったり、 Watir-WebDeiver (Selenium)+ PhantomJS で取ってきた JS 必須サイトをクロールしたり、といろいろやってきました。
でも時代の潮流というか何というか、Node.js + CSS で Electron とかゆーデスクトップアプリが作れるようになったりして、 Node.js も知っておかないと不便だと思い始めたところでした。
ちょうどいいところにこの本が出てきたので買いました。

以前からクジラ飛行机さんの本は
基本から学ぶHTML5+JavaScript

基本から学ぶHTML5+JavaScript

スマートフォンのためのHTML5アプリケーション開発ガイド―iPhone/iPad/Android対応

スマートフォンのためのHTML5アプリケーション開発ガイド―iPhone/iPad/Android対応

このあたりでお世話になっていましたので、きっと今回もいい本なのだろうと思い、(私にしては珍しく)書店で中身を立ち読みすること無く、通販で購入しました。
読み始めたところですが、いろんなことが充実した良い本です。
ただ、盛りだくさんのため&私の知識が足りない(JS/jQueryの知識不足)ため、この本の内容だけでは分かりづらい部分があります。ので個人的なメモ書きとしてブログを書いていこうと思います。
さすがにQiitaとかに書くのはおこがましいので、ここにヒッソリと書いておきますw
ここでは前書きのみ。本編は下の目次のところから書いていきます。

読者サポートサイト

前者に作者のフォローや訂正情報が載っています。後者は本のソースダウンロードサイトでしかありません。ですが、この本はソースの一部が省略されていますので、ソースをダウンロードする必要があります。

目次

個人的学習ノートの動作環境
本の目次
第1章 開発環境の準備

01節 JavaScript実行エンジンいろいろ
02節 エージェントとは何か?
03節 開発環境を構築しよう
04節 Node.jsモジュールのインストール
05節 開発効率を高める

第2章 Web データの収集

01節 Webページのダウンロード
02節 HTMLの解析(リンクと画像の抽出)
03節 サイトを丸ごとダウンロード
04節 XML/RSSの解析
05節 定期的にダウンロードする

第3章 ログインの必要なWebサイトをクロールする

01節 PhantomJSとCasperJS
02節 ログイン後のデータをダウンロードする
03節 DOM解析手法とCSSセレクタ
04節 Electronでデスクトップアプリを作る
05節 Electronでスクリーンキャプチャ

第4章 データの整形と保存

01節 データの文字コードと変換について
02節 データの整形と正規表現について
03節 データ形式の基礎知識
04節 CoffeeScriptは必修項目
05節 データベースの使い方
06節 レポートの自動生成

第5章  形態素解析で日本語を扱う

01節 形態素解析について
02節 文章にフリガナを振ろう
03節 マルコフ連鎖で文章を要約する
04節 簡単な文章校正ツールを作ろう
05節 語句の出現頻度を調べよう

第6章 クローラーのためのデータソース

01節 有益なデータソースの一覧
02節 Twitterからのダウンロード
03節 Facebookからのダウンロード
04節 はてなブックマークからのダウンロード
05節 Amazonからのダウンロード
06節 Flickrから写真のダウンロード
07節 YouTubeから動画のダウンロード
08節 Yahoo!Financeから為替や株のダウンロード
09節 Wikipediaからのダウンロード

第7章  データの分類と予測と機械学

01節 データの活用法について
02節 ベイジアンフィルタによる分類
03節 移動平均を利用した予測とグラフの描画
04節 人工無能と会話しよう
05節 サポートベクターマシンで文字認識しよう(前編)
06節 サポートベクターマシンで文字認識しよう(後編)

第8章 データの視覚化と応用

01節 Google Chartsで簡単チャート作成
02節 D3.jsで自由度の高いチャート作成
03節 D3.jsで地図を描画しよう
04節 D3.jsから派生したライブラリ

Node.js参考書

手元にあるものだけ紹介します。

パーフェクトJavaScript (PERFECT SERIES 4)

パーフェクトJavaScript (PERFECT SERIES 4)

Part6に「サーバサイドJavascript」として Node.js が紹介されています(ただしバージョンはかなり古く、0.4.8ベースでの解説ですが)。
プロになるためのJavaScript入門 ~node.js、Backbone.js、HTML5、jQuery-Mobile (Software Design plus)

プロになるためのJavaScript入門 ~node.js、Backbone.js、HTML5、jQuery-Mobile (Software Design plus)

Part4「サーバーサイド」として Node.js の解説があります。バージョンは 0.8.1 です。