Baixar documentos referenciados por uma página da web com o wget

1

Eu quero baixar todos os documentos apontados por uma página da web com o wget.

Quando executo o wget, ele faz o download apenas da página da Web, não de todos os conteúdos que a página da Web vincula.

wget --content-disposition -v -S -r -nc -np -Kk -px --ignore-length \
     --content-disposition --proxy-user "XYZ" --proxy-passwd "PASS" \
     --no-check-certificate --load-cookies=cookies.txt --keep-session-cookies \
     'https://www.website.com/link/live?func=lab&objId=174914395&objAction=browse&viewType=1'

O Wget faz o download de apenas uma página, que é https://www.website.com/link/live?func=lab&objId=174914395&objAction=browse&viewType=1 . Essa página da Web contém:

DataStringToVariables( '( {"currentPageNum":1,"totalPages":1,"totalCount":21,"dbTimeTaken":0,"timeTaken":1,"haveBigImages":"fa lse1","myrows":[{"dataId":"177020845","type2":"184","typeName":"Document","name":"Action_Mar_JKill%2Exls", etc.

Existem muitos xls, docs, pdf, etc, mas o wget não faz o download deles. Como posso baixá-los?

    
por Damanjeet Singh 10.08.2013 / 16:44

1 resposta

1

Não tenho certeza se estou recebendo sua pergunta, mas vou tentar responder de qualquer maneira.

O que você está obtendo do URL é JSONP , mas o JSONP não é tratado pelo wget. wget é apenas um programa de download, conforme observado aqui na man page de wget :

GNU Wget is a free utility for non-interactive download of files from the Web.

wget não suporta nenhuma análise dos dados que recebe. Se você deseja analisar os dados, use outra linguagem de programação para importar e processar os dados recebidos aqui.

Supondo que você esteja escrevendo algum tipo de script de shell, você também pode usar jsawk para buscar os dados. Veja esta resposta para um exemplo.

Depois de ter analisado o JSON (P), você pode ir em frente e baixar os arquivos listados nos dados JSON (P) com wget .

    
por 10.08.2013 / 17:51

Tags