Skip to content

Instantly share code, notes, and snippets.

@danilovazb
Last active August 29, 2015 13:56
Show Gist options
  • Save danilovazb/8955721 to your computer and use it in GitHub Desktop.
Save danilovazb/8955721 to your computer and use it in GitHub Desktop.
Criador de logins em massa na LocatePeople com mechanize
#!/usr/bin/perl
###############################################
#
# Criador de logins em massa na LocatePeople
# c0d3r: Danilo
# E-mail: danilovazb[at]gmail[dot]com
#
###############################################
use Term::ANSIColor;
use MIME::Base64;
use WWW::Mechanize;
use LWP;
# Codificação em base64 apenas para "Segurança" do usuário
my $code2=decode_base64('COLOQUE USER EM BASE64 AQUI');
my $user="$code2";
my $code1=decode_base64('COLOQUE SENHA EM BASE64 AQUI');
my $pass="$code1";
# Looping para gerar usuários por número, ex: User01, User02, User03 ... User10, User11
for($i = 1; $i < 5; $i++){
# Variável que recebe o usuário com o número
$login = "USUARIO0$i";
# Inicia o Mechanize
my $consulta = WWW::Mechanize->new();
$consulta -> cookie_jar(HTTP::Cookies->new());
$consulta -> post('http://locatepeople.com.br/pesquisa/Default.aspx'); # PAGINA DE LOGIN
$consulta -> form_name('form1'); # Seleciona o Form1 para preenchimento
$consulta -> field ('txtLogin' => $user); # Pega o campo de Login ("name=txtLogin")
$consulta -> field ('txtSenha' => $pass); # Pega o Campo de Senha ("name=txtSenha")
$consulta -> click ('btnLogin'); # Simula um clique no botão de login
$consulta -> get( 'http://locatepeople.com.br/pesquisa/AdmUsuario.aspx' ); # Faz um get na pagina de administração de usuários
$consulta -> select ('ctl00$ContentPlaceHolder1$ddlCliente' => '199'); # Preenche o combobox CLiente
$consulta -> select ('ctl00$ContentPlaceHolder1$ddlUsuarios' => '-1'); # Preenche o combobox Usuario, valor "-1" para novo usuário
$consulta -> field ('ctl00$ContentPlaceHolder1$txtDesc' => 'DESCRICAO'); # Descrição do login do usuário
$consulta -> field ('ctl00$ContentPlaceHolder1$txtLogin' => $login); # Login que será criado
$consulta -> field ('ctl00$ContentPlaceHolder1$txtSenha' => 'SENHA'); # Senha que será para todos os usuários
$consulta -> click ('ctl00$ContentPlaceHolder1$btnSalvar'); # Simula um clique no botão salvar
$consulta -> click ('ctl00$btnSair'); # Clica no botão SAIR para poder entrar novamente.
}
exit;
@Eduproxa
Copy link

Amigo ao executar o pl , ele da erro na linha 36 , gostaría de saber se vc tem login na locate.

@danilovazb
Copy link
Author

Opa, Edu, até tenho o login da Locate, mas ele é de uso restrito, pagamos pelo login, esse script é apenas para estudo de como funciona o mechanize, utilizei para mostrar para desenvs da minha empresa.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment