2011/09/05 20:39現在の総影響度合計
ポルトガル : 2859
イスパニア : 2814
フランス : 2428
イングランド : 2293
ネーデルランド : 2283
ヴェネツィア : 1986
オスマントルコ : 1025
イスパニア : 2814
フランス : 2428
イングランド : 2293
ネーデルランド : 2283
ヴェネツィア : 1986
オスマントルコ : 1025
イングとネデが超僅差!
午前中に調べたときはイングがネデに負けてたんだけど、盛り返してきたようです。
各街ごとの影響度はここを → here
(おまけ)
影響度を調べるのに、ちょちょっと作ったPerlスクリプトです → here
$gcidにはGamecity市民ID、$passにはパスワードを入れてね!!
#!/usr/bin/perl
use strict;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
use URI::Escape;
#-----------------------------------
my $gcid = '********';
my $pass = '********';
my $sleep_time = 0;
my $retry = 5;
#-----------------------------------
{
my $ua = create_ua();
login($ua, $gcid, $pass) or die "cannot login";
my @towns = ((1..162),(164..167));
my %POWER = (
'イスパニア' => 0,
'ポルトガル' => 0,
'ヴェネツィア' => 0,
'フランス' => 0,
'ネーデルランド' => 0,
'イングランド' => 0,
'オスマントルコ' => 0
);
foreach ( sort { $a <=> $b } @towns ) {
my %power = get_town_info($ua, $_);
foreach ( keys %POWER ) {
$POWER{$_} += $power{$_};
}
}
print "\n総影響度合計\n";
foreach ( keys %POWER ) {
print "\t$_ : $POWER{$_}\n";
}
}
#-----------------------------------
sub create_ua{
my $cookie_jar = new HTTP::Cookies(hide_cookie2 => 1, ignore_discard => 1);
my $ua = new LWP::UserAgent(cookie_jar=>$cookie_jar);
$ua->agent('Mozilla/5.0 (Windows; U; Windows NT 5.0; ja; rv:1.8.12) Gecko/20070219 Firefox/2.0.0.4');
$ua->default_header('Accept'=>'text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,text/css,*/*;q=0.1');
$ua->default_header('Accept-Language'=>'ja, en;q=0.66, en-us;q=0.33');
$ua->default_header('Accept-Charset'=>'Shift_JIS,utf-8;q=0.7,*;q=0.7');
return $ua;
}
sub login{
my ($ua, $gcid, $pass) = @_;
my $url = 'http://www.gamecity.ne.jp/dol/web/d';
my $req = new HTTP::Request('POST', $url);
my %content = ('gcid'=>$gcid, 'pass'=>$pass, 'Act'=>'contract');
my $content = join('&', map{$_.'='.uri_escape($content{$_})} keys %content);
$req->content($content);
$req->content_length(length $content);
$req->content_type('application/x-www-form-urlencoded');
my $res = $ua->request($req);
my $string = $res->content;
return $string !~ m/ログインできません/;
}
sub get_town_info{
my ($ua, $town) = @_;
my $url = 'http://www.gamecity.ne.jp/dol/web/d?Act=info_nation_town_i&Tid=' . $town;
my $req = new HTTP::Request('GET', $url);
my $name;
my @result;
my $r = $retry;
while (1) {
my $res = $ua->request($req);
my $string = $res->content;
$string =~ s/\r\n/\n/g;
($name) = ($string =~ m/
<\/td>/);
@result = ($string =~ m/([^<]+)<\/td>\n(\d+)\%<\/td>/g);
last if @result;
warn("情報取得失敗 $town\n");
die if (--$r <= 0);
}
print "$town $name\n";
print "\t" . join(" ", map { "$_%" } @result) . "\n";
return @result;
}
0 件のコメント:
コメントを投稿