Abra uma página da Web e digite um nome de usuário e senha via CLI

0

Por fim, quero usar um script bash para abrir e entrar em um site automaticamente.

Eu queria saber se eu poderia usar os comandos curl ou elinks para fazer login em um site e, em seguida, exportar isso para um navegador da Web ou se eu pudesse alterar as preferências no navegador Firefox para efetuar login com credenciais predefinidas.

Não tive sucesso nessas tentativas e não sei se são possíveis. Estou aberto a quaisquer outros métodos para realizar essa tarefa.

    
por vhwitt 23.06.2015 / 23:40

1 resposta

1

Para coisas simples, você pode usar o curl. Existe uma maneira de encher um formulário com a opção -F, mas muitas coisas são mais complexas do que apenas enviar um único formulário. Para isso, você precisa passar por várias etapas para chegar onde deseja estar.

Eu escreveria um script perl e usaria o módulo WWW :: Mechanize.

link

Aqui está um exemplo da página:

#!/usr/bin/perl
use WWW::Mechanize;
my $mech = WWW::Mechanize->new();

$mech->get( $url );

$mech->follow_link( n => 3 );
$mech->follow_link( text_regex => qr/download this/i );
$mech->follow_link( url => 'http://host.com/index.html' );

$mech->submit_form(
    form_number => 3,
    fields      => {
        username    => 'mungo',
        password    => 'lost-and-alone',
    }
);

$mech->submit_form(
    form_name => 'search',
    fields    => { query  => 'pot of gold', },
    button    => 'Search Now'
);
    
por 25.06.2015 / 00:59