Como descobrir o URL de download real em sites de download que usam redirecionamentos

54

Digamos que eu queira fazer o download de algo com wget , mas o site que possui os arquivos necessários redireciona para um site que escolhe automaticamente um espelho para mim (e não há URL de arquivo estático fornecido).

O download desses sites funciona com o Firefox, mas como obtenho o URL real (não apenas o link para a página de redirecionamento) para que eu possa baixar esses arquivos com wget ?

    
por Phil 21.08.2009 / 17:03

15 respostas

50

Quando você iniciar a transferência no Firefox, cancele-a e clique com o botão direito no download e clique em "Copiar link de download". Se você estiver usando uma versão mais antiga, clique com o botão direito e clique em "Propriedades", e o link estará na janela que é aberta.

No Chrome - execute o download normalmente - e acesse o menu - Downloads - e você verá o link direto que foi usado. Ou pressione Ctrl + J para abrir a janela.

    
por 21.08.2009 / 17:07
17

Você pode usar a extensão LiveHTTPHeaders para determinar a URL real do arquivo que está sendo baixado. (Fique de olho nos GETs em particular.)

    
por 21.08.2009 / 17:07
16

Embora eu também goste de wget, uso outra ferramenta semelhante: cURL . cURL tem especificamente um recurso para seguir redirecionamentos ( -L / --location ), e também é gratuito como wget. Eu sugiro manter ambos no seu cinto de ferramentas; eles têm algumas características complementares.

Veja um artigo interessante Me deparei sobre como usar wget ou cURL para fazer download de um site que usa cookies para autenticação. Há uma menção do recurso cURL --location para seguir os redirecionamentos. (Na verdade, com base em nenhum sinalizador especial mencionado para o wget, parece-me que o wget pode seguir redirecionamentos implicitamente ..?)

    
por 21.08.2009 / 18:45
4

Nessas situações, primeiro eu inicio o download real e faço uma pausa e copio o URL.

    
por 10.09.2009 / 15:17
4

Esta é a resposta que você está procurando!

Existe apenas uma solução de um clique à prova de falhas: cliget

Ele fornece um comando curl com cabeçalhos, cookies e tudo, com um botão copiar para a área de transferência, diretamente na caixa de diálogo de download.

Para o Firefox : link

Não estou ligando o curlwget para o Chrome aqui, porque é feio. Atualize esta resposta se o Chrome tiver um equivalente tão elegante.

    
por 09.08.2017 / 07:29
3

Normalmente, uso o DownThemAll addon do firefox quando há muitos links para download e preciso selecionar URLs específicos.

Ele mostra o URL completo e permite que você adicione o modo de pausa para que você possa iniciar o download quando quiser.

Como um recurso adicional, você pode pegar o URL e pular o download completamente.
No entanto, se você precisar baixar o arquivo, o DownThemAll é muito bom como um acelerador.

    
por 10.09.2009 / 15:18
2

Você não pode usar o wget diretamente usando o --trust-server-name flag? Ele será baixado e salvo usando o nome do arquivo para o qual ele redireciona.

    
por 15.11.2010 / 17:55
1

Sua pergunta é um pouco incerta. Existem 2 URLs aqui: o que você usa e o que voltou após o redirecionamento. O primeiro você deve saber, desde que se originou de sua máquina, enquanto o segundo é o que exibido no seu navegador. Se a questão se referir a onde o arquivo está no servidor redirecionado, não há como saber.

Se você está tentando depurar as chamadas emitidas para o servidor, você pode usar o firefox add-on do firebug, versões antigas dele existem aqui: link .

    
por 10.09.2009 / 15:16
1

Você pode usar o Curl para baixar um URL redirecionado :

curl --location http://domainName/fileName 2> /dev/null > fileName
    
por 28.12.2011 / 21:58
0

Você pode usar o IDM (Gerenciador de Download da Internet) ao clicar no link de download não direto para redirecionar o link e exibir o link direto.

    
por 21.08.2009 / 18:01
0

Você tentou passar o URL de redirecionamento para wget? Às vezes eles trabalham para mim.

Aqui está um exemplo do SourceForge:

$ wget http://sourceforge.net/projects/emule/files/eMule/0.49c/eMule0.49c-Installer.exe/download?use_mirror=ufpr,Centro%20de%20Computacao%20Cientifica%20e%20Software%20Livre
--14:23:20--  http://sourceforge.net/projects/emule/files/eMule/0.49c/eMule0.49c-Installer.exe/download?use_mirror=ufpr,Centro%20de%20Computacao%20Cientifica%20e%20Software%20Livre
Resolvendo sourceforge.net... 216.34.181.60
Connecting to sourceforge.net|216.34.181.60|:80... conectado!
HTTP requisição enviada, aguardando resposta... 302 Found
Localização: http://downloads.sourceforge.net/project/emule/eMule/0.49c/eMule0.49c-Installer.exe?use_mirror=ufpr [seguinte]
--14:23:21--  http://downloads.sourceforge.net/project/emule/eMule/0.49c/eMule0.49c-Installer.exe?use_mirror=ufpr
Resolvendo downloads.sourceforge.net... 216.34.181.59
Connecting to downloads.sourceforge.net|216.34.181.59|:80... conectado!
HTTP requisição enviada, aguardando resposta... 302 Found
Localização: http://ufpr.dl.sourceforge.net/project/emule/eMule/0.49c/eMule0.49c-Installer.exe [seguinte]
--14:23:21--  http://ufpr.dl.sourceforge.net/project/emule/eMule/0.49c/eMule0.49c-Installer.exe
Resolvendo ufpr.dl.sourceforge.net... 200.236.31.1, 200.17.202.1
Connecting to ufpr.dl.sourceforge.net|200.236.31.1|:80... conectado!
HTTP requisição enviada, aguardando resposta... 200 OK
Tamanho: 3342809 (3,2M) [application/x-msdos-program]
Saving to: 'eMule0.49c-Installer.exe'

100%[====================================================================================>] 3.342.809   2,35M/s   in 1,4s

14:23:23 (2,35 MB/s) - 'eMule0.49c-Installer.exe' saved [3342809/3342809]

A versão que eu uso:

$ wget --version
GNU Wget 1.10.2 
    
por 21.08.2009 / 19:27
0

Havia um addon para o Firefox chamado Splitlink . Ele não funciona para o Firefox 3+, mas funcionou no Firefox 2. Se você puder encontrá-lo em qualquer lugar (ele não está mais na página oficial de complementos), ele fornecerá mais informações sobre o URL real.

    
por 10.09.2009 / 15:10
-1

O URL de cópia do Firefox é definitivamente mais simples. O wget (como a questão foi marcada) também é uma boa solução porque você pode ver todos os saltos intermédios, não apenas o URL final:

%pr_e%

10% [======= > ] 1.818.064 609K / s

    
por 10.09.2009 / 16:05
-1

Se você quiser que um gerenciador de downloads gerencie o download em vez do Firefox, você pode usar o addon Flashgot firefox.

    
por 15.11.2010 / 18:12
-1

Você pode usar a ferramenta netcat (que geralmente é incluída nas distribuições do Linux) na porta 80 do site. Isso mostra a resposta HTTP bruta completa, incluindo os cabeçalhos que contêm o URL de destino de redirecionamento. Essa é uma das maneiras mais diretas de obter o local de redirecionamento, já que você está fazendo a mesma coisa que os downloaders fazem quando eles seguem redirecionamentos. Aqui está um exemplo para o URL http://www.example.com/example .

printf 'GET /example HTTP/1.1\r\nHost: www.example.com\r\n\r\n' | netcat www.example.com 80

... ou ...

Como alternativa, muitos navegadores mostram o URL de download real na seção Downloads . Nestes, você pode iniciar o download e cancelá-lo imediatamente, depois copiar o URL (do histórico de downloads).

    
por 18.06.2013 / 07:11