WWW::AppStore::Scraper::Lite #
メンテするのも面倒なので放置中の AppStore::Scraper 、今のところ動いているけど、動かなくなった時なんとかするのも面倒なので、取り急ぎ、公開 API で取得できる情報だけに割り切った WWW::AppStore::Scraper::Lite 作った
AppStore::Scraper との違いは
- ☆ 1 つが何人とか、細かい数値は取得できない。平均レートとレート付けした 合計人数のみ
- 順位取得できない
- レビューのタイトル取得するようにした (これは AppStore::Scraper にも必要だな)
ダウンロードは GitHub からどうぞ
p5-www-appstore-scraper-lite
それにしても、最近自鯖の Git だけ触っててすっかり忘れてるのに、それでもなんとかなる GitHub はステキですね
この規模のプログラムな Gist とかでいいんですかね。もうちっと学ばなあきませんね
use WWW::AppStore::Scraper::Lite;
use Data::Dumper;
my $obj = WWW::AppStore::Scraper::Lite->new(wait => 5);
my $info = $obj->app_info(
\t\t\t app => ['404732112'],
\t\t\t store => ['jp','us'],
\t\t\t review_number => 1,
\t\t\t );
print Dumper $info;
とすると、結果はこんな感じ
$VAR1 = {
'404732112' => {
'jp' => {
'review_number' => 1,
'store' => 'jp',
'reviews' => [
{
'date' => '2012-11-05',
'title' => "......",
'message' => "......"
}
],
'store_code' => 143462,
'genre_id' => 6002,
'app_name' => "Sleipnir Mobile - Web \\x{30d6}\\x{30e9}\\x{30a6}\\x{30b6}",
'store_name' => 'Japan',
'artist_id' => 318578225,
'ratings' => {
'userRatingCount' => 1727,
'averageUserRatingForCurrentVersion' => '4.5',
'averageUserRating' => '3.5',
'userRatingCountForCurrentVersion' => 4
},
'price' => '0',
'genre_name' => 'Utilities'
},
'us' => {
'review_number' => 1,
'store' => 'us',
'reviews' => [
{
'date' => '2012-09-08',
'title' => '......',
'message' => '.......'
}
],
'store_code' => 143441,
'genre_id' => 6002,
'app_name' => 'Sleipnir Mobile - Web Browser',
'store_name' => 'United States',
'artist_id' => 318578225,
'ratings' => {
'userRatingCount' => 220,
'averageUserRatingForCurrentVersion' => undef,
'averageUserRating' => '4.5',
'userRatingCountForCurrentVersion' => undef
},
'price' => '0',
'genre_name' => 'Utilities'
}
}
};