Так что это сводит меня с ума.Обычно, когда я жестко прописываю свое имя пользователя и пароль, я могу без проблем войти в систему.Но я хочу предложить пользователю ввести имя пользователя и пароль, так как я хотел бы поделиться этой программой с другими.(предполагается, что программа войдет на наш сайт курсов и загрузит всю нашу информацию о работе курса - лекции, hw и т. д.)
Этот код работает:
use WWW::Mechanize;
use LWP;
my $username = 'user';
my $password = 'pass';
my $mech = WWW::Mechanize->new();
$mech -> cookie_jar(HTTP::Cookies->new());
$mech -> get('log-in url');
$mech -> form_name('theform');
$mech -> field ('username' => $username);
$mech -> field ('password' => $password);
$mech -> click ('log in');
print $mech-> content();
однако, когда я пытаюсьи предложите пользователю ввести информацию для входа, теперь она работает.печать содержимого возвращает html страницы входа в систему, а не следующую страницу (страница курсов для указанного пользователя)
use LWP;
use WWW::Mechanize;
my $login_url = 'log-in url';
print "\nUser name: ";
my $username = <>;
print "Password: ";
my $password = <>;
my $mech = WWW::Mechanize->new();
$mech -> cookie_jar(HTTP::Cookies->new());
$mech -> get($login_url);
$mech -> form_name('theform');
$mech -> field ('username' => $username);
$mech -> field ('password' => $password);
$mech -> click ('log in');
print $mech-> content();
это действительно не имеет смысла, поскольку они по сути одно и то же.Я даже набрал имя пользователя / пароль в кавычках в приглашении и все еще безрезультатно ..... (я также понимаю, что это будет не очень легко проверить без веб-сайта и информации для входа, извините за это)