Como acessar a página da Web e marcar uma caixa de seleção de html

1

No local de café que utilizo, o portal cativo concede acesso Wi-Fi após você marcar uma caixa de seleção na página de destino (aceitando os TOS). Isso não seria um problema se eu não passasse horas lá e eles não perguntassem a cada 15 min ou 100 MB de novo e de novo.

Posso automatizar o processo de conexão com o Bash, o Perl, o Python ou qualquer outro recurso comumente encontrado no Ubuntu?

Html recortou:

<form action="http://1.1.1.1/reg.php" method="post" name="form2">
<input name="url" value="2EB8F3587D88E953591ABBE4833943D6C1241D2842D3D2FC83D98ED1D0613DC1BFFB8380" type="hidden">
      <center>
        <p><img src="logo_main.jpg" align="absmiddle" height="125" width="134"> 
        </p>
        <p> 
          <input name="checkbox" id="checkbox" value="checkbox" type="hidden">
          <input checked="checked" name="checkbox2" value="checkbox" onchange="evalue(this);" type="checkbox">
          <font face="Georgia, Times New Roman, Times, serif">I accept the <a href="http://1.1.1.1/tos.htm" target="_top">Terms and Conditions</a></font> 
        </p>
        <p>
          <input name="Submit" value="Enter" id="button1" type="submit">
      </p></center>
</form>
    
por Pierre B 02.04.2017 / 13:43

1 resposta

1

Eu estou supondo que o valor url aqui é algum tipo de chave de sessão diferente do que o nome do campo implica. Você poderia tentar obtê-lo usando, por exemplo, sed :

wget -qO- http://… | sed -n 's/<input name="url" value="\([^"]\+\)" type="hidden">//p'

Depois disso, você pode criar uma solicitação por conta própria usando curl . Pode ser útil entrar nas ferramentas do desenvolvedor do Google Chrome, onde você pode clicar com o botão direito do mouse na solicitação para obter uma cópia dela como uma linha de comando curl .

Como alternativa, você pode usar o Selenium. Usando o Selenium for Python, o código ficaria assim:

driver.find_element_by_name('checkbox2').click()
driver.find_element_by_id('button1').click()
    
por 02.04.2017 / 14:39

Tags