Drkcore

28 09 2006 perl Tweet

LWP::UserAgent::WithCache

ごくたまに、思いつきでLWPを使ったコードを書くことがある。そんな時は、wgetとかcurlで、対象のファイルをローカルに落として、ゴソゴソとテストを繰り返し、最後にLWPをくっつけるというちょっと無駄が多いやりかたをしていた。最近さすがに嫌になってきて、なんとなく気になっていたLWP::UserAgent::WithCacheというモジュールを使ってみた。

なんも考えなくてもキャッシュされるので便利!

キャッシュがある限りそれを読めばいいし~~
って、キャッシュの読み込みどうすればいいんじゃろか?

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
#!/usr/bin/perl

use strict;
use warnings;
use LWP::UserAgent::WithCache;

my %cache_opt = (
                'namespace' => 'lwp-cache',
                'cache_root' => "/tmp",
                'default_expires_in' => 60 * 60 * 24 * 7 );
my $ua = LWP::UserAgent::WithCache->new(\%cache_opt);
my $response = ua->get('http://www.potschi.de/svmtut/svmtut.html');

if ($response->is_success) {
    print $response->content;  # or whatever
} else {
    print $ua->{cache}->get('http://www.potschi.de/svmtut/svmtut.html')->{content};
}

$uaでできたcache::fileのオブジェクトを引っ張り出してきてgetしたのを出力させてみた。あんまりいい方法とは言えない気がするけどこんな感じでいいのか。

About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021