密林の図書室

日々読んでいる本の読書の備忘録を兼ねたブックレビューのブログです。英語教材も含まれます。日々、様々な本を読んでいます。読みっぱなしにするのではなく、アウトプット化することも本との対話の一部と考えており、このBlogを立ち上げました。人生は短く、経験からのみ得られることは限られます。読書を通じて多くのことを学び、それは自分にとって目に見えない財産になっています。 尚、過去に別名でAmazonのレビュー欄に掲載しているものもあります。未掲載のものは「Amazonレビュー欄未掲載」のカテゴリーを参照ください。

Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド-

著:加藤 耕太

 

 タイトル通りの本なのだが、予想より幅広い内容の本だった。URLの基礎知識や各種のスクレーピングの方法はもちろんある。XPathCSSセレクター、lxmlによるスクレーピング、BeautifulSoupの利用、Javascriptを使ったページに対するスクレーピングといったような盛沢山の方法が実際のコードのサンプルとともに紹介されている。特に、フレームワークであるScrapyの利用方法についてはSpiderの作成方法から詳しく書かれている。

 しかし、この本はそれだけではない。MySQLへのデータ保存法、NoSQLであるMongoDBへのデータ保存、GoogleのBigQueryの利用、地図データの可視化、メッセージキューであるRQでの利用、asyncioでの非同期IO、Flickerからの画像収集、OpenCVによる顔画像の抽出、AWSでの利用と、とにかくクローリングとスクレーピングに関連する処理の説明がいろいろ盛り込まれているのが素晴らしい。

 著作権上の注意、robots.txtによるクローラーへの指示、クローリングとスクレーピングは処理を分けるべき、というような説明もある。また、FREST APIについても載っている。Vagrantの導入と基本操作についても紹介されている。掲載されているサンプルプログラムは記載されたWebサイトからダウンロードできる。

 個人的に、Amazonにログインして購買履歴をダウンロードできるプログラムは役に立った。Amazonのログインは簡単なスクレーピングだと突破できずにあきらめていたので。

 すべて白黒印刷だし、実際はWindowsPython環境でもそのまま動くコードも多いとはいえUbuntuでの利用が前提になっている。まったくの初心者にはとっつきにくいかもしれないが、実用性が高く、中身は良い。とても勉強になる。

 

目次

第1章 クローリング・スクレイピングとは何か
第2章 Pythonではじめるクローリング・スクレイピング
第3章 強力なライブラリの活用
第4章 実用のためのメソッド
第5章 クローリング・スクレイピングの実践とデータの活用
第6章 フレームワーク Scrapy
第7章 クローラーの継続的な運用・管理

 

大型本、400ページ、技術評論社、2016/12/16