Como automatizar o download de vários PDFs de uma determinada página da Web?

1

Estou tentando fazer o download de PDFs no link . Ao clicar em Ler PDF , ele abre uma nova janela com PDF. Ao clicar no botão de download, ele abre uma caixa de diálogo e solicita que o usuário especifique o local para salvar o arquivo.

Depois de abrir a página do e-book em questão, desejo automatizar as etapas a seguir:

  1. Ler PDF é clicado. A janela é aberta em nova janela.
  2. Ícone de download é clicado. A caixa de diálogo aparece e pede para especificar o nome do arquivo e a localização.
  3. O nome padrão fornecido é meio sem sentido. Assim, o nome significativo como Frontmatter , Conteúdo etc. é passado lá, o que é mencionado antes do link de download e foi copiado anteriormente.

Eu quero automatizar as etapas acima para muitos e-books. Se os links estivessem em formato não-javascript , seria fácil fazer o download usando algum tipo de gerenciador de downloads.

(PS: A página da web pode não ter todos os links Read PDF ativados, mas todos estão ativos por trás do proxy na minha localização.)

    
por Gaurav 23.04.2016 / 08:52

1 resposta

1

Eu escrevi o seguinte JavaScript para você:

var ar = $('a.pdf-icon').each(function (a) 
{
  var ar = $(this).attr('onclick').split("'"); 
  var url = "http://ebooks.cambridge.org/open_pdf/" 
           + ar[3] 
           + "?pubCode=CUP&urlPrefix=cambridge&productCode=cbo";   
  alert("Press OK for next download");
  window.open(url);
});

Para executá-lo, abra a página vinculada à sua pergunta, abra o console JavaScript (CTRL + SHIFT + I) e cole o código acima no console e pressione Enter. Então, ele fará o download de todos os PDFs vinculados.

Por favor, note:

  • Eu tentei isso com o Chrome e o Firefox, ambos funcionaram.
  • Talvez seja necessário desativar o recurso de bloqueador de pop-ups, caso contrário, ele não funcionará
  • Pode ser necessário desativar os plug-ins de PDF que você tem em seu navegador, caso contrário, os PDFs podem ser exibidos no plug-in em vez de serem baixados
  • O script pode precisar ser modificado se o código-fonte da página for diferente quando visualizado por meio do seu proxy.
por 28.04.2016 / 14:24