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

55

Digamos que eu queira baixar algo, wgetmas o site que contém 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 um URL real (não apenas o link para a página de redirecionamento) para poder baixar esses arquivos wget?

Phil
fonte
3
A resposta inovadora funciona, mas qual é o objetivo então? Apenas deixe o FF terminar o download. Você pode adicionar mais detalhes à sua pergunta? Acho que você está tentando automatizar o download por meio de algum tipo de script, e não usar o wget apenas para gits-n-shiggles.
Yoopergeek
2
quando você baixar com o Firefox, clique direito sobre o seu download em transferências Windows e selecione Copiar link para download
Am1rr3zA
2
@Yoopergeek: Sua resposta ajuda se o arquivo for extremamente grande e você quiser colocá-lo em um gerenciador de downloads. ;)
cp2141
@Yoopergeek: O OP também mencionou o "wget", que é uma ferramenta de linha de comando linux / unix para transferir um arquivo sem qualquer interface do usuário com janelas. Ferramentas como essa são úteis quando você está executando uma máquina virtual na nuvem e precisa fazer o download de software. Como o wget está apenas tentando obter um arquivo, não exibindo publicidade enquanto aguarda a seleção de um espelho, o URL direto é essencial.
Mightypile
1
O complemento Cliget fornece um comando de curvatura para copiar e colar na caixa de diálogo de download. addons.mozilla.org/pt-BR/firefox/addon/cliget
Dagelf 9/17

Respostas:

53

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

No Chrome - execute o download normalmente - depois vá para Menu - Downloads - e você verá o link direto usado. Ou pressione Ctrl+ Jpara abrir a janela.

Avanço
fonte
1
Sim, isso seria muito mais simples do que eu sugeri!
Arathorn 21/08/09
meus pensamentos também, arathorn. Eu comecei a digitar uma resposta para usar a guia 'net' no Firebug, mas isso é muito mais simples!
Matt
1
Isso não parece funcionar para mim no github (tentei no Firefox, Chrome, Safari). ex .: nodeload.github.com/jverzani/gWidgets2/tarball/master
Etienne Low-Décarie
cmd + shift + j no Mac
tommy.carstensen
18

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.)

Arathorn
fonte
1
que ideia legal, vou tentar isso. Eu votaria se se não a minha baixa rep;)
Phil
alguma coisa para o chrome?
Anwar
Eu sei que este é um tópico antigo, mas queria dar o meu +1 para esta resposta. A melhor solução é definitivamente aceitável para a maioria dos casos. No meu, tenho um gui da Web de inventário no qual queria exportar facilmente todos os meus dispositivos no formato CSV usando o botão de exportação. Para tornar esse script, tomei o seu conselho "fique de olho no GET" e verifiquei a guia de rede na F12 para ver o arquivo que estava sendo baixado pela exportação. A partir daí, pelo menos no chrome, você pode clicar com o botão direito do mouse nesse arquivo e copiar> copiar como cURL. Substituí o nome do dispositivo como uma variável no link e coloquei em um loop for no bash para enrolar
user2856414
16

Enquanto gosto do wget também, uso outra ferramenta semelhante: cURL . O cURL possui especificamente um recurso para seguir redirecionamentos ( -L / --location), e também é gratuito como o wget. Sugiro manter os dois em seu cinto de ferramentas; eles têm alguns recursos complementares.

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

Chris W. Rea
fonte
5

Esta é a resposta que você estava procurando!

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

Ele fornece um comando de curvatura 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 : https://addons.mozilla.org/en-US/firefox/addon/cliget

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

Dagelf
fonte
Obrigado! Ele trabalhou como um encanto
mudassirkhan19
4

Nessas situações, primeiro inicio o download real, pause e copie o URL.

ukanth
fonte
1
copiá-lo de onde?
Phil Phil
1
Se você pausar o download na janela de download do firefox antes da conclusão, poderá clicar com o botão direito do mouse e pegar o URL (algumas vezes, isso foi feito para disparar o URL wget).
Nik
3

Eu costumo usar o addon DownThemAll do firefox quando há muitos links para download e preciso selecionar URLs específicos.

Ele mostra o URL completo e permite adicionar no 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.

nik
fonte
2

Você não pode usar o wget diretamente usando a --trust-server-namebandeira? Ele fará o download e salvará usando o nome do arquivo para o qual ele redireciona.

Zitrax
fonte
1

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

Se você estiver tentando depurar as chamadas emitidas para o servidor, poderá usar o complemento firefox do firebug, existem versões mais antigas aqui: https://addons.mozilla.org/en-US/firefox/addons/ versões / 1843 .

harrymc
fonte
1
Honestamente, eu não entendo o que é tão claro na minha pergunta, alguns cartazes abaixo até mesmo realmente entendido;)
Phil
Se o seu único problema é apenas obter o URL, pausar o download funciona apenas para arquivos grandes, a menos que você seja muito rápido. Você pode muito mais simples, basta encontrar essas informações na lista do gerenciador de downloads: clique com o botão direito do mouse e faça o link Copiar download.
harrymc 10/09/09
Para o downvoter: não perca seu tempo aqui - este é um post muito antigo e pode não se aplicar a você.
harrymc
0

Você pode usar o IDM (Internet Download Manager) quando clicar no link de download não direto, ele o redirecionará e exibirá o link direto.


fonte
0

Você já tentou passar o URL de redirecionamento para o 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 
Leonel Martins
fonte
0

Havia um complemento 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 (não está mais na página oficial de complementos), ele fornecerá mais informações sobre o URL real.

alex
fonte
-1

O URL da cópia do firefox é definitivamente mais simples. O wget (como a pergunta foi marcada) também é uma boa solução, porque você pode ver todos os saltos intermediários, não apenas o URL final:

$ wget 'http://sourceforge.net/projects/pdfcreator/files/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe/download'
--2009-09-10 09:59:53--  http://sourceforge.net/projects/pdfcreator/files/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe/download
Resolving sourceforge.net... 216.34.181.60
Connecting to sourceforge.net|216.34.181.60|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://downloads.sourceforge.net/project/pdfcreator/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe?use_mirror=voxel [following]
--2009-09-10 09:59:54--  http://downloads.sourceforge.net/project/pdfcreator/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe?use_mirror=voxel
Resolving downloads.sourceforge.net... 216.34.181.59
Connecting to downloads.sourceforge.net|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://voxel.dl.sourceforge.net/project/pdfcreator/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe [following]
--2009-09-10 09:59:54--  http://voxel.dl.sourceforge.net/project/pdfcreator/PDFCreator/PDFCreator%200.9.8/PDFCreator-0_9_8_setup.exe
Resolving voxel.dl.sourceforge.net... 74.63.52.167, 69.9.191.19, 69.9.191.18, ...
Connecting to voxel.dl.sourceforge.net|74.63.52.167|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 17695920 (17M) [application/octet-stream]
Saving to: `PDFCreator-0_9_8_setup.exe'

10% [=======> ] 1,818,064 609K/s

Jordânia
fonte
-1

Se você deseja que um gerenciador de downloads lide com o download em vez do firefox, você pode usar o addon Flashgot firefox.

vtest
fonte
-1

Você pode usar a netcatferramenta (geralmente incluída nas distribuições linux) na porta 80 do site. Isso mostra a resposta HTTP bruta completa, incluindo os cabeçalhos que contêm o URL de destino do redirecionamento. Esta é uma das maneiras mais diretas para obter o local de redirecionamento, desde que você está fazendo a mesma coisa que downloaders fazer quando eles siga 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 Downloadsseção. Nestas, você pode iniciar o download e cancelá-lo imediatamente, e copiar o URL (a partir do histórico de downloads).

Abbafei
fonte