Force wget para usar o nome do arquivo real

43

Ao usar wget em um script para baixar alguns arquivos do Google Docs, o nome do arquivo não será preservado. Por exemplo:

wget 'http://spreadsheets.google.com/pub?key=pyj6tScZqmEfbZyl0qjbiRQ&output=xls' 

salva o arquivo como pub?key=pyj6tScZqmEfbZyl0qjbiRQ em vez de indicatorhivestimatedprevalence15-49.xls , que é o que recebo quando clico no link em um navegador. Existe alguma maneira de reforçar esse comportamento "semelhante a navegador" em wget ?

    
por Chinmay Kanchi 10.11.2011 / 01:08

3 respostas

77
wget --content-disposition 'http://spreadsheets.google.com/pub?key=pyj6tScZqmEfbZyl0qjbiRQ&output=xls'

fará o truque para você.

Ele ainda não está totalmente implementado e parece ser um pouco problemático, por isso, não é a opção padrão em wget , use-o por sua conta e risco.

    
por Bruno Pereira 10.11.2011 / 01:19
0

O link do Google Docs está realmente dizendo a um script no servidor para ser executado, analisando-o no arquivo que você deseja. O arquivo, no melhor de meu conhecimento, nunca existe no servidor no formato els, mas é gerado em tempo de execução quando você o solicita. Assim, não há nada para ser obtido.

Para fazer o download do arquivo, você precisa usar o link do google API .

    
por Ethan 10.11.2011 / 01:14
0

Você pode tentar usar o curl para baixar e manter o nome do arquivo original:

curl -OJL ${your_url}
  • -O para nome remoto
  • -J para o nome do cabeçalho remoto
  • -L para localização

consulte opções de linha de comando de curvas .

    
por 02.08.2018 / 11:29

Tags