OS3.0でタンブラー系のアプリが死亡してるのとか見て思ったんだけど、スクレイピング系のアプリはスクレイピングパートを自前のサーバーに置いて、そこを経由するほうがいいのかなぁと思った。
スクレイピングのアルゴリズムをアプリの中にハードコードしてしまうと、HTMLの仕様が変わってしまったときに、迅速な対応ができない。修正版をAppleに提出しても1〜2週間かかってしまい、その間アプリは動くなってしまうので。
あとはそういうロジック部分をサーバに出しとくと、iPhone, Android, BlackBerryとかでクロスなアプリを作りやすいし、危機対応もしやすいのかなぁと思う。
—
fladdict » スクレイピングはサーバー処理が安全かなぁ
内部実装の話なので特に外に向けてアピールするつもりはなかったのですが、tumblr gear r.1.2.0 でまさにその実装をしていたところなので、ちょっとびっくりしました。
fladdictさんの指摘と違うことをやろうとしているのは、スクレイピングの処理自体をサーバー側に乗せてしまうとスケールしないと思ったので、スクレイピングのエンジンをクライアント側に持ち、クライアントはメタデータをサーバー側から取ってきてスクレイピングする、という実装にしているところ。
すでにスクレイピング処理に使うメタデータのほとんどはサーバー側に配置できているのですが、もっと処理の抽象化やパラメーター化が必要だなあと思っています。
という実験中。
(via honishi) (via yaruo) (via gkojax) (via polog)
iviewも元々スクレイピングのためのメタデータ共有をしたい、というところから始まったもののひとつなのでスクレイプのルールは外から持ってきて実行を中でやろうと思っていましたがiPhone SDK Agreementをよく読んでたら3.3.2に
An Application may not itself install or launch other executable code by any means, including without limitation through the use of a plug-in architecture, calling other frameworks, other APIs or otherwise. No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple’s Documented APIs and built-in interpreter(s).
というのがあって、もともと組み込まれているインタプリタを除いて、ダウンロードしたコードを解釈し実行するこことがNGだって書いてあるのを見つけてApple的にFlashがNGなのと同じ古い理由でweb2.0/radical trustがspoilされて本当にむかつくけどとりあえずレビュー通らなかったら作っただけむだになるのでひよってやめました。
どうせならそのメタデータの仕様とデータを公開/共有しませんか。誰かがメンテしてくれるようになりますよ。
(via ku)
そういう理由でレビューに通らないことがあるんですね。知りませんでした。これでレビュー NG だったら悲しいですね。
それで、メタデータの公開はぜひしたいと思います。(見る人には見ればわかる)こんな(汚い)ものを公開していいのなら、、という前提付きなのですが。。正直、正規表現の固まりです。xml, dom, xpath あたりでもっとスマートにできるのではないかと思いましたが、評価する時間がなく既存の実装を延長する形でこの実装になってしまいました。この方が柔軟に切り貼り(スクレイピング)できるだろうということで自分で自分に言い聞かせています。
今度是非いろいろ相談に乗っていただければ助かります。
# というところで、公式 tumblr アプリがどんどん便利になってきているので、tumblr gear は早晩お役御免になる日が来ると思っており、現在の開発モチベーションは「技術的興味」がメインとなっていることも付け加えさせていただきます。
(via honishi)
たぶんAppStoreの代替として機能する物はだめというのが3.3.2の意図だと思うので黙ってれば普通に通ると思います。正規表現でも何でも公開されていればきっとだれかがなんとかしてくれますよ!
(via ku)