Faça o download de um arquivo do shell quando o clique do botão for necessário

3

Eu tenho um link para um arquivo que eu gostaria de baixar do shell. Infelizmente, o URL redireciona para uma página de contrato de licença de software que requer clicar em um botão Aceitar. Isso é bom quando eu estou em um navegador padrão, mas quando eu estou no wget shell, basta baixar a página html e não o arquivo real. Quais opções estão disponíveis para baixar o arquivo para o shell quando os termos devem ser aceitos primeiro?

Especificamente, estou vendo a seguinte página de download do LSI:

link

Eu visualizei o código-fonte na página e encontrei um link para o seguinte local, mas ele também extrai a página eula ao usar o wget.

link

Até agora, as únicas opções que tenho são:

  1. Faça o download para uma máquina diferente que tenha um navegador e, em seguida, faça o upload para o servidor que tenha apenas um shell. Lenta e dolorosa.
  2. Instale algo como o Lynx. Não tenho certeza se o Lynx lida bem com downloads e não adoro a ideia de instalar software extra em um servidor de produção.
  3. Continue analisando o código do EULA para determinar como ele está impedindo meu download (supondo que seja javascript e não no lado do servidor).

Tem que haver uma maneira mais fácil?

    
por Brett 07.03.2013 / 22:56

4 respostas

3

Normalmente, uso apenas lynx para isso. Reserve um momento e familiarize-se com as teclas de navegação. O processo de download é simples e permite que você selecione o local de saída ...

No entanto, neste caso, tentei executar o download por meio do lynx , mas não tive sorte.

Então pegue o nome do arquivo resultante, 3DM2_CLI-Linux_10.2.1_9.5.4.zip , e procure por um fonte alternativa que irá permitir que você wget. Abordagem mais fácil.

    
por 07.03.2013 / 23:14
2

Para a maioria dos sites, você pode:

  • Inicie o download no firefox no seu PC.
  • Ao fazer o download, clique com o botão direito do mouse e copie o URL de download. Cancele o download.
  • Use esse URL com o wget.

Isso funciona em 95% dos sites que usam redirecionamentos desse tipo.

No entanto, este site tem um comportamento estranho:

  • Tentei no meu PC e baixei instantaneamente a partir desse URL - tendo acabado de aceitar o EULA do meu telefone na mesma rede sem fio.
  • Fazer o download no wget de outro PC na mesma rede funcionou bem.
  • O download no wget de um servidor remoto me trouxe a página do EULA.

Como fiz isso de dispositivos diferentes, não são cookies nem parâmetros de postagem. A única coisa que eles compartilham é que eles estão por trás do mesmo NAT.

Portanto, só posso concluir que estão a acompanhar os endereços IP que aceitaram o EULA e só mostram a página do EULA aos que não o aceitaram. Para baixá-lo do wget - aceite o EULA em outro computador com o mesmo endereço IP público ou ligue para o LSI e desative seus web designers!

    
por 07.03.2013 / 23:03
2

Hack : esta é uma solução específica para o LSI. Basta adicionar a fonte = 1 ao URL. Então o link

http://www.lsi.com/downloads/Public/SATA/SATA%20Common%20Files/3DM2_CLI-Linux_10.2.1_9.5.4.zip

mudaria para:

http://www.lsi.com/downloads/Public/SATA/SATA%20Common%20Files/3DM2_CLI-Linux_10.2.1_9.5.4.zip?source=1

O comando wget é então:

wget http://www.lsi.com/downloads/Public/SATA/SATA%20Common%20Files/3DM2_CLI-Linux_10.2.1_9.5.4.zip?source=1 -O 3DM2_CLI-Linux_10.2.1_9.5.4.zip

LSI POR QUE!

    
por 07.03.2013 / 23:42
0

link

Esse link vai para ele de um navegador sem EULA, mas não funcionou para wget ... estranho. Você pode simplesmente baixá-lo para uma área de trabalho e depois enviá-lo para sua caixa de linux?

    
por 07.03.2013 / 23:21