スクレイピング

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」

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


スポンサーリンク

関連記事

Google App Engine上のWordPressでFlickrの画像を貼る
Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』
trimesh:PythonでポリゴンMeshを扱うライブラリ
OpenVDB:3Dボリュームデータ処理ライブラリ
pythonもかじってみようかと
BGSLibrary:OpenCVベースの背景差分ライブラリ
OpenCVで動画の手ぶれ補正
Webスクレイピングの勉強会に行ってきた
UnrealCLR:Unreal Engineで.NET Coreを利用できるプラグイン
書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
手を動かしながら学ぶデータマイニング
ポリゴンジオメトリ処理ライブラリ『pmp-library (Polygon Mesh Process...
C++ 標準テンプレートライブラリ (STL)
konashiのサンプルコードを動かしてみた
adskShaderSDK
ブログの復旧が難航してた話
OpenCVの三角測量関数『cv::triangulatepoints』
ManimML:機械学習の概念を視覚的に説明するためのライブラリ
TorchStudio:PyTorchのための統合開発環境とエコシステム
OpenCV
Unityで学ぶC#
Kornia:微分可能なコンピュータービジョンライブラリ
Iridescence:プロトタイピング向け軽量3D可視化ライブラリ
OpenCV 3.1のsfmモジュールのビルド再び
Amazon EC2ログイン用の秘密鍵を無くした場合の対処方法
OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...
Google Chromecast
WinSCP
iPhone・iPod touchで動作する知育ロボット『ROMO』
ブログをGoogle App EngineからAmazon EC2へ移行
Seleniumを使ったFXや株の自動取引
GAN (Generative Adversarial Networks):敵対的生成ネットワーク
Mitsuba 2:オープンソースの物理ベースレンダラ
AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する
3Dモデルを立体視で確認できるVRアプリを作っている
ArUco:OpenCVベースのコンパクトなARライブラリ
Verilog HDL
HD画質の無駄遣い
科学技術計算向けスクリプト言語『Julia』
NumSharp:C#で使えるNumPyライクな数値計算ライブラリ
WordPress on Google App Engineを1週間運用してみて
定数

コメント