タグ

Furlに関するAOI-CATのブックマーク (3)

  • FurlX::Coro を使ってみたかった - はちゅにっき

    節電対応で休日が日・月になった hatyuki です。ということで、明日がおやすみ! 「DB から引っ張ってきた 5,000 件くらいの URL が、全部 HTTP Status Code 200 を返してくるか調べたいんだけど。」 という、なさそうでやっぱない依頼をうけたのでささっと書いてみることに。 ぱっと思いついたのはこんな感じ。 use strict; use warnings; use Furl; use My::Util qw/ db /; use Test::More; my $furl = Furl->new; my $itr = db->search('tables'); while (my $row = $itr->next) { my $res = $furl->head($row->url); is $res->code, 200, $row->url; } don

    FurlX::Coro を使ってみたかった - はちゅにっき
  • 測ってみた - あふひねこのにき

    前回のエントリーブクマコメントに、id:gfxさんからCoroからFurlを使う方法を書いていただいていたので、同じ環境でベンチしてみました。 gfx++ Coro+Furlのコードはhttps://gist.github.com/665488から。 use strict; use warnings; use 5.0100; use Furl; use AnyEvent::HTTP; use Coro; use Coro::Select; use Coro::AnyEvent; use Coro::Semaphore; use Benchmark qw/timethese cmpthese/; # request my $url = 'http://ext.nicovideo.jp/api/getthumbinfo/'; my $retry = 3; open my $fh, '<:utf

    測ってみた - あふひねこのにき
  • APIへの問い合わせを高速化したい - あふひねこのにき

    結論 Furlは非常に速い。でも、AnyEventの方が仕事が早く終わった。 今回は、相手サーバーが応答してデータを取得するまでの時間の方がボトルネック。 なお、結果として次の動画を作るのにとっても役に立った。 ときどきAEでAPI叩いているとエラーが返ってきましたけど。 背景 nicomas.sqlite用にデータを取得するperlスクリプトの実行に時間がかかっているのを何とかしたい。 135,000件以上の「アイドルマスター」タグのついた動画があるので、時間がかかるのはしょうがないけど、工夫できないだろうか。 なお、環境はstrawberry perl 5.12.1 built for MSWin32-x86-multi-threadをWindows XPで動かしています。 現状 タグ検索ページをスクレイピングして動画IDを取得 動画IDリストをもとに、APIへ問い合わせ 取得データを

    APIへの問い合わせを高速化したい - あふひねこのにき
  • 1