NAME
WWW::HatenaLogin - login/logout interface to Hatena
SYNOPSIS
use WWW::HatenaLogin;
# new login
my $session = WWW::HatenaLogin->new({
username => 'username',
password => 'password',
});
# login to hatena.com (optional)
my $session = WWW::HatenaLogin->new({
username => 'username',
password => 'password',
com => 1,
});
# login to hatelabo.jp (optional)
my $session = WWW::HatenaLogin->new({
username => 'username',
password => 'password',
labo => 1,
});
# do not login with new method
my $session = WWW::HatenaLogin->new({
username => 'username',
password => 'password',
nologin => 1,
});
# WWW::Mechanize option (optional)
my $session = WWW::HatenaLogin->new({
username => 'username',
password => 'password',
mech_opt => {
timeout => $timeout,
cookie_jar => HTTP::Cookies->new(...),
},
});
# logout
$session->logout;
# login
$session->login;
# Check if already logged in to Hatena
# If you have a valid cookie, you can omit this process
unless ($session->is_loggedin) {
$session->login;
}
# get session id
$session->session_id;
# get cookie_jar
$session->cookie_jar;
# get WWW::Mechanize object
$session->mech;
DESCRIPTION
WWW::HatenaLogin login and logout interface to Hatena. this module is very simple.
You can easily recycle login data the following WWW::Mechanize object and Cookie data. Please refer to the mech method and the cookie_jar method.
AUTHOR
new ( [\%args] )
my $session = WWW::HatenaLogin->new({
username => $username,
password => $password,
mech_opt => {
timeout => $timeout,
cookie_jar => HTTP::Cookies->new(...),
},
com => 1, # use to hatena.com server
labo => 1, # use to hatelabo.jp server
nologin => 1, # do not login with new method
});
Creates and returns a new WWW::HatenaLogin object. If you have a valid cookie and pass it into this method as one of mech_opt
, you can omit username
and password
. Even in that case, you might want to check if the user agent already logs in to Hatena using is_loggedin
method below.
com
field is optional, which will be required if you login to hatena.com.
labo
field is optional, which will be required if you login to hatelabo.jp.
nologin
field is optional, which will be required if you do not login new method.
mech_opt
field is also optional. You can use it to customize the behavior of this module in the way you like. See the POD of WWW::Mechanize for more details.
is_loggedin ()
if(!$session->is_loggedin) {
...
}
Checks if $session
object already logs in to Hatena.
login ( [\%args] )
$diary->login({
username => $username,
password => $password,
});
Logs in to Hatena::Diary using username
and password
. If either username
or password
isn't passed into this method, the values which are passed into new
method above will be used.
logout ()
$session->logout;
Logout by Hatena.
mech ()
$session->mech;
return to WWW::Mechanize object.
cookie_jar ()
$session->cookie_jar;
return to HTTP::Cookies object. this method same to $session->mech->cookie_jar;
session_id ()
$session->session_id;
return to session id. key in cookie is a value of rk.
login_uri ()
$session->login_uri;
return to login uri.
logout_uri ()
$session->logout_uri;
return to logout uri.
username ('username')
$session->username;
$session->username('new_username');
username accessor
AUTHOR
Kazuhiro Osawa <ko@yappo.ne.jp>
SEE ALSO
ACKNOWLEDGMENT
some codes copied from WWW::HatenaDiary.
LICENSE
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.