wget como fazer o download do arquivo de uma página da web que solicita que você clique na condição "Concordo"

3

Gostaria de baixar um arquivo usando o utilitário wget. Eu segui as instruções sobre "

Aqui está o URL do qual estou tentando baixar o arquivo:

link

A página de download requer que eu clique no botão "Concordo" antes de continuar com o download.

Existe uma maneira de incluir o envio "Concordo" com o utilitário wget?

Obrigado.

    
por Adam 28.04.2015 / 06:53

1 resposta

4

Você pode enviar um formulário usando wget , usando a opção --post-data . Primeiro, veja o formulário que a página usa:

<form name="acceptedForm" id="acceptedForm" action="submitAgreement" method="post">
...
        <button id="agree_terms_use" name="agreementValue" type="submit" value="Agree">Agree</button>  &nbsp; 
        <button id="disagree_terms_use" name="agreementValue" type="submit" value="Do Not Agree">Do Not Agree</button>

Normalmente, o valor do atributo action é usado para obter o URL de destino, que se torna https://frbservices.org/EPaymentsDirectory/submitAgreement . Os name s dos elementos de formulário tornam-se os parâmetros. Então você precisa salvar os cookies que você recebe ao aceitar o acordo. De esta postagem do SO , podemos construir o comando necessário:

wget --post-data="agreementValue=Agree" https://frbservices.org/EPaymentsDirectory/submitAgreement --save-cookies cookie.txt --keep-session-cookies --delete-after

Então, podemos usar esses cookies para baixar o arquivo:

wget --load-cookies=cookie.txt 'https://frbservices.org/EPaymentsDirectory/FedACHdir.txt?AgreementSessionObject=Agree'
    
por muru 28.04.2015 / 07:18