ここでいうのも・・・
ブログネタ:最近一番好きなテレビ番組は? 参加中なんですが、ドラマ大好きなんです。
月9の月の恋人がいいんです。
あんなふうに自信たっぷりに
自分のやりたいことを突き詰めていくような
仕事してみたいですよね
あと、Motherも最初はかなり暗い感じで
ちょっと無理かなと思ってたんだけど、
めっちゃ泣ける。家族の前では絶対見れない。
涙ぼろぼろ状態です。
自動ペタ返しツール
ペタ返しの自動ツールです。
付いたペタにペタを返すことができます。
失敗したときのリトライとかはしていません
#!/usr/bin/perl
use strict;
use HTTP::Cookies;
use LWP::UserAgent;
use HTTP::Request::Common;
use Time::HiRes;
# あなたの Ameba ID を設定してください
my $ownId = "yourAmebaId";
# あなたの Ameba のパスワードを設定してください
my $loginPass = "yourAmebaPassword";
my $loginId = $ownId;
my $pageCount = 100;
if( @ARGV > 0 ){
$pageCount = $ARGV[0];
if( @ARGV > 1 ){
$ownId = $ARGV[1];
}
}
my $petaTime = Time::HiRes::time;
my $petaPage = 0;
my $amebaId = "";
my $amebaName = "";
my $imageUrl = "";
my $nextHttp = "";
my $petaCount = 0;
my $petaUrl = "";
my %idList;
my $addRequest = "http://peta.ameba.jp/p/addPeta.do?targetAmebaId
=";
open(HTMLFILE,">amebaPeta.html");
my $cookie_jar = HTTP::Cookies->new(file => 'amebaCookie.txt', autosave => 1);
my $ua = new LWP::UserAgent;
$ua->cookie_jar($cookie_jar);
my $loginUrl = "http://www.ameba.jp/login.do
";
my %loginData = ( 'amebaId' => $loginId, 'password' => $loginPass );
my $loginReq = POST( $loginUrl, [%loginData] );
my $res = $ua->request($loginReq);
my $requestLine = $addRequest . $ownId;
my $req = new HTTP::Request GET => $requestLine;
my $res = $ua->request($req);
print HTMLFILE "<HTML><HEAD>\n";
print HTMLFILE "<meta http-equiv=\"content-language\" content=\"ja\" />\n";
print HTMLFILE "<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\" />\n";
print HTMLFILE "</HEAD><BODY><br>\n";
while( $petaPage < $pageCount ){
if ($res->is_success) {
foreach my $Line (split(/\n/,$res->content)){
if($Line =~ /^(.img.*") alt.*imageResize.*a.$/){
$imageUrl = $1 . "/>";
}elsif($Line =~ /^.a href..http...ameblo.jp\/([^\/]+)\/.+\"(.+)のブログ\"\>$/){
$amebaId = $1;
$amebaName = $2;
if( not exists($idList{$amebaId}) ){
$petaCount++;
$idList{$amebaId} = $petaCount;
$petaUrl = $addRequest . $amebaId;
$req = new HTTP::Request GET => $petaUrl;
$res = $ua->request($req);
if($res->as_string =~ /明日もペタしてね/){
print $petaCount . ":" . $amebaName . ":明日もペタしてね\n";
}elsif($res->as_string =~ /このユーザーの設定により、ペタをつけることができません。/){
print $petaCount . ":" . $amebaName . ":このユーザーの設定により、ペタをつけることができません。\n";
}elsif($res->as_string =~ /(addPetaComplete.do[^"]+)"/){
$petaUrl = "http://peta.ameba.jp/p/
" . $1;
$req = new HTTP::Request GET => $petaUrl;
while( $petaTime > Time::HiRes::time ){
select( undef, undef, undef, 0.5 );
}
$res = $ua->request($req);
if($res->is_success){
print $petaCount . ":" . $amebaName . ":ペタOK\n";
}else{
print $petaCount . ":" . $amebaName . ":ペタ 失敗 ★\n";
}
$petaTime = Time::HiRes::time + 3;
}else{
print $petaCount . ":" . $amebaName . ":不明\n";
}
print HTMLFILE "<a href=\"http://ameblo.jp/
" . $amebaId . "/page-1.html#main\" Target=\"AmebaPeta\">"
. $petaCount . ".ブログ</a><a href=\"" . $addRequest . $amebaId . "\" Target=\"AmebaPeta\">"
. $imageUrl . $amebaName ."</a><br>\n";
}
}elsif($Line =~ /a href=\"([^"]+)\".*次へ/){
$nextHttp = "http://peta.ameba.jp
" . $1;
$req = new HTTP::Request GET => $nextHttp;
$res = $ua->request($req);
}elsif($Line =~ /^<div class=\"date\">(.*)<\/div>$/){
print HTMLFILE $1 . "<br>\n";
}else{
}
}
} else {
print "リストの取得に失敗しました[ " . $petaPage . " ]\n";
$petaPage = $pageCount;
}
$petaPage++;
}
print HTMLFILE "</BODY></HTML>\n";
close(HTMLFILE);
exit;
