スクレイピング

PaaSを触り始めてから1番やってみたかったことと言えば、Webサイトのスクレイピング。
別に攻撃するつもりじゃ無くて、マッシュアップしたWeb上の情報を上手く可視化すれば、色んな考察が得られるんじゃないかと期待しているから。
そう思ったきっかけはKakeibonっていう無料で使える自動ネット家計簿を知ったから。(以前はOCN家計簿って名前だった)
このサイトは、銀行口座やクレジットカード、ECサイトなどの情報を引っ張ってきて収支をグラフにまとめてくれる。
銀行もクレジットカードも、それぞれのポータルサイトはAPIなんて公開していないので、おそらくスクレイピングで実現している。
既存の情報を上手く使うだけで色んなことが見えてくるんだなぁ、と感心した。

ということで、しばらくスクレイピングについて調べていたのである。ちょっと調べてみると、フロントでもサーバサイドでもできるし、色んな言語で実装できるので、どこから手を付けたらいいのかちょっと悩むレベルで選択肢が豊富。やるとしたらサーバサイドだけど、サーバサイドはどの言語が1番組み合わせやすいかちょっと自分の知見が足りてない。

こういうのは結構需要があるみたいで、スクレイピングするコードの共有や、スクレイピングしたデータをAPI化するサイトもあるみたい。

ScraperWiki

ScraperWikiはイギリスのスタートアップ企業で、スクレイパーコードを共有するサイトを提供しています。
開発者達はサイト上から直接コード(Ruby, PHP, Python)を編集、実行することができます。スクレイプを定期的に実行することも可能で、取得されたデータはScraperWikiに保存されますが、ScraperWikiはAPIを用意しているので、このAPIを通して、他のサイトでデータを再利用することが可能です。
「Wiki」といっているだけあって、一般公開されているコードは他の人も編集したり、またコードをコピーして他のスクレイピングに利用することもできます。定期的に実>行されているスクレイパーがエラーを起こしていないかをチェックする仕組みがあり「みんなでスクレイピングを管理」するための仕組みがいたるところにあります。
ScraperWikiは、もともとイギリスで、どの議員がどの法案に賛成または反対票を投じたかを議会のサイトから創業者の一人が2003年頃にスクレイプしたことを起源に持ちます。

スクレイピングするなら ScraperWiki 使うといいよ

kimono
指定したウェブサイトをスクレイピングしてAPI化してくれるサービス「kimono」

さて、地道に勉強するか。

関連記事

konashiのサンプルコードを動かしてみた

iPhoneアプリ開発 Xcode 5のお作法

OpenMVS:Multi-View Stereoによる3次...

iPhone・iPod touchで動作する知育ロボット『R...

UnityのAR FoundationでARKit 3

オープンソースの顔認識フレームワーク『OpenBR』

TensorSpace.js:ニューラルネットワークの構造を...

ROSの薄い本

OpenCVで顔のモーフィングを実装する

CycleGAN:ドメイン関係を学習した画像変換

Gource:バージョン管理の履歴を可視化するツール

WebGL開発に関する情報が充実してきている

UnityでLight Shaftを表現する

Google Colaboratoryで遊ぶ準備

組み込み向けのWindows OS 『Windows Emb...

ブログが1日ダウンしてました

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

Deep Learningとその他の機械学習手法の性能比較

bpy-renderer:レンダリング用Pythonパッケー...

FCN (Fully Convolutional Netwo...

AfterEffectsプラグイン開発

Theia:オープンソースのStructure from M...

マルコフ連鎖モンテカルロ法

OpenCVのfindEssentialMat関数を使ったサ...

uvでWindows11のPython環境を管理する

Russian3DScannerのトポロジー転送ツール『Wr...

Google App EngineでWordPress

Seleniumを使ったFXや株の自動取引

Python for Unity:UnityEditorでP...

Rerun:マルチモーダルデータの可視化アプリとSDK

OpenMVSのサンプルを動かしてみる

クラスの基本

ZScript

手を動かしながら学ぶデータマイニング

GAN (Generative Adversarial Ne...

MythTV:Linuxでテレビの視聴・録画ができるオープン...

Unity Scriptコーディング→Unreal Engi...

Human Generator:Blenderの人体生成アド...

WordPressのテーマを自作する

チャットツール用bot開発フレームワーク『Hubot』

動的なメモリの扱い

OANDAのfxTrade API

コメント