Заполнение формы в Perl с помощью модуля WWW::Mechanize
Я создаю сценарий, который входит в веб-форму в Perl с использованием модуля mechanize, и я получаю сообщение об ошибке:
синтаксическая ошибка в /home/arty/scripts/gmail_pw_chngr.pl строке 18, рядом с "кнопкой" Выполнение /home/arty/scripts/gmail_pw_chngr.pl прервано из-за ошибок компиляции.
Код
use WWW::Mechanize;
my $mech = WWW::Mechanize->new();
my $url = "https://accounts.google.com/Login";
$mech->get($url);
$result = $mech->submit_form(
form_name => 'gaia_loginform', # Name of the form
#Instead of form name you can specify
#form_number => 1
fields =>
{
Email => 'arty32l@gmail.com', # Name of the input field and value
Passwd => 'password',
}
button => 'signIn' # Name of the submit button
);
print $result->content();
Выше приведен код, все значения из входных данных являются именами, но это всегда ошибки в одной строке.
3 ответа
Решение
Использование use strict;
а также use warnings;
, Они помогут вам.
use CGI qw(:standard);
use CGI::Carp qw(warningsToBrowser fatalsToBrowser);
use WWW::Mechanize;
my $mech = WWW::Mechanize->new();
my $url = "https://accounts.google.com/Login";
$mech->get($url);
$result = $mech->submit_form(
form_name => 'gaia_loginform', #name of the form
#instead of form name you can specify
#form_number => 1
fields =>
{
Email => 'arty32l@gmail.com', # name of the input field and value
Passwd => 'password',
}
,button => 'signIn' #name of the submit button
);
print $result->content();