Comment trouver l'URL de téléchargement réel sur les sites de téléchargement qui utilisent des redirections

55

Supposons que je souhaite télécharger quelque chose, wgetmais que le site Web contenant les fichiers dont j'ai besoin redirige vers un site qui choisit automatiquement un miroir pour moi (et qu'aucune URL de fichier statique n'est fournie).

Le téléchargement à partir de tels sites fonctionne avec Firefox, mais comment puis-je obtenir une URL réelle (pas seulement le lien vers la page de redirection) pour pouvoir télécharger ces fichiers wget?

Phil
la source
3
La réponse de Breakthrough fonctionne, mais à quoi sert-elle alors? Laissez juste FF terminer le téléchargement. Pouvez-vous ajouter plus de détails à votre question? Je vais deviner que vous essayez d'automatiser le téléchargement via une sorte de script et que vous n'utilisez pas wget uniquement pour gits-n-shiggles.
Yoopergeek
2
Lorsque vous téléchargez avec firefox, faites un clic droit sur votre téléchargement dans la fenêtre des téléchargements et sélectionnez le lien de téléchargement de la copie.
Am1rr3zA
2
@Yoopergeek: Sa réponse est utile si le fichier est extrêmement volumineux et que vous souhaitez le placer dans un gestionnaire de téléchargement. ;)
cp2141
@Yoopergeek: L'OP a également mentionné "wget", un outil de ligne de commande linux / unix permettant de transférer un fichier sans aucune interface utilisateur Windowsy. Des outils comme celui-ci sont pratiques lorsque vous exécutez une machine virtuelle dans le nuage et que vous devez télécharger un logiciel. Puisque wget essaie simplement d’obtenir un fichier et non d’afficher de la publicité en attendant qu’un miroir soit sélectionné, l’URL directe est essentielle.
mightypile
1
Le module Cliget vous donne une commande curl à copier et coller dans la boîte de dialogue de téléchargement. addons.mozilla.org/en-US/firefox/addon/cliget
Dagelf

Réponses:

53

Lorsque vous avez commencé le transfert dans Firefox, annulez-le, cliquez avec le bouton droit de la souris sur le téléchargement et cliquez sur "Copier le lien de téléchargement". Si vous utilisez une ancienne version, cliquez dessus avec le bouton droit de la souris et cliquez sur "Propriétés". Le lien apparaîtra dans la fenêtre qui s'ouvre.

Dans Chrome - lancez le téléchargement normalement - puis allez dans Menu - Téléchargements - et vous devriez voir le lien direct qui a été utilisé. Ou appuyez sur Ctrl+ Jpour ouvrir la fenêtre.

Percée
la source
1
Ouais, ce serait beaucoup plus simple que ce que j'ai suggéré!
Arathorn
mes pensées aussi, arathorn. J'avais commencé à taper une réponse pour utiliser l'onglet 'net' dans Firebug, mais c'est beaucoup plus simple!
Matt
1
Cela ne semble pas fonctionner pour moi sur github (j'ai essayé dans Firefox, Chrome, Safari). Exemple: nodeload.github.com/jverzani/gWidgets2/tarball/master
Etienne Low-Décarie le
cmd + shift + j sur Mac
tommy.carstensen
18

Vous pouvez utiliser l' extension LiveHTTPHeaders pour déterminer l'URL réelle du fichier en cours de téléchargement. (Gardez un œil sur les GET en particulier.)

arathorn
la source
1
C'est une bonne idée, je vais essayer ça. je voterais si ce n'est pas mon représentant bas;)
Phil
quelque chose pour le chrome?
Anwar
Je sais que c'est un vieux fil, mais je voulais donner mon +1 pour cette réponse. La meilleure solution est définitivement acceptable dans la plupart des cas. Dans le mien, je possède un logiciel d’inventaire Web que je voulais exporter facilement au format CSV de tous mes appareils à l’aide de leur bouton d’exportation. Pour que ce script puisse être scripté, j'ai suivi votre conseil "gardez un œil sur GET" et vérifié l'onglet Réseau dans F12 pour voir le fichier en cours de téléchargement par exportation. À partir de là, en chrome au moins, vous pouvez cliquer avec le bouton droit de la souris sur ce fichier et copier> copier en tant que cURL. J'ai substitué le nom de l'appareil en tant que variable dans le lien et l'ai placé dans une boucle for bash to curl
user2856414
16

Bien que j'aime aussi wget, j'utilise un autre outil similaire: cURL . cURL a spécifiquement une fonctionnalité pour suivre les redirections ( -L / --location), et il est aussi gratuit que wget. Je suggère de garder les deux dans votre toolbelt; ils ont des caractéristiques complémentaires.

Voici un article intéressant sur l'utilisation de wget ou de cURL pour le téléchargement depuis un site utilisant des cookies pour l'authentification. Il est fait mention de la fonctionnalité cURL --location pour suivre les redirections. (En fait, si aucun drapeau spécial n'est mentionné pour wget, il me semble que wget peut suivre les redirections implicitement ..?)

Chris W. Rea
la source
5

C'est la réponse que vous cherchiez!

Il n'y a qu'une seule solution infaillible en un clic: cliget

Il vous donne une commande curl avec en-têtes, cookies et tout, avec un bouton Copier dans le presse-papiers, directement dans la boîte de dialogue de téléchargement.

Pour Firefox : https://addons.mozilla.org/en-US/firefox/addon/cliget

Je ne lie pas curlwget pour Chrome ici, car c'est moche. Veuillez mettre à jour cette réponse si Chrome obtient un équivalent aussi élégant.

Dagelf
la source
Je vous remercie! Cela a fonctionné comme un charme
mudassirkhan19
4

Dans ces situations, je commence par le téléchargement réel, le met en pause et copie l'adresse URL.

ukanth
la source
1
le copier d'où?
Phil
1
Si vous mettez le téléchargement en pause dans la fenêtre de téléchargement de firefox avant la fin, vous pouvez cliquer avec le bouton droit de la souris et saisir l'URL (l'avoir déjà fait pour déclencher l'URL wget).
Nik
3

J'utilise habituellement l' addon firefox DownThemAll lorsqu'il y a beaucoup de liens à télécharger et que je dois sélectionner des URL spécifiques.

Il affiche l'URL complète et vous permet d'ajouter en mode pause afin que vous puissiez démarrer le téléchargement quand vous le souhaitez.

En tant que fonctionnalité supplémentaire, vous pouvez récupérer l'URL et ignorer le téléchargement.
Cependant, si vous devez télécharger le fichier, DownThemAll est un très bon accélérateur.

nik
la source
2

Ne pouvez-vous pas utiliser wget directement en utilisant le --trust-server-namedrapeau? Il téléchargera et enregistrera en utilisant le nom de fichier vers lequel il redirige.

Zitrax
la source
1

Votre question n'est pas claire. Il y a 2 URL ici: celle que vous utilisez et celle qui est revenue après la redirection. Le premier que vous devriez savoir, puisqu'il provient de votre ordinateur, tandis que le second est celui qui est affiché dans votre navigateur. Si la question concerne l'emplacement du fichier sur le serveur redirigé, il n'y a aucun moyen de savoir.

Si vous essayez de déboguer les appels émis vers le serveur, vous pouvez utiliser l'add-on firefox de firebug. Des versions plus anciennes existent ici: https://addons.mozilla.org/en-US/firefox/addons/ versions / 1843 .

harrymc
la source
1
Honnêtement, je ne comprends pas ce qui manque de clarté dans ma question, certaines affiches ci-dessous ont même été réellement comprises;)
Phil
Si votre seul problème est d'obtenir l'URL, suspendre le téléchargement ne fonctionne que pour les fichiers volumineux, à moins que vous ne soyez très rapide. Vous pouvez trouver beaucoup plus simple, il suffit de trouver cette information dans la liste du gestionnaire de téléchargement: cliquez avec le bouton droit de la souris et faites Copier le lien de téléchargement.
harrymc
Pour le votant inférieur: Ne perdez pas votre temps ici - ceci est un très vieux message et peut ne pas s'appliquer à vous.
harrymc
0

Vous pouvez utiliser IDM (Internet Download Manager) lorsque vous cliquez sur le lien de téléchargement non direct, il redirigera le lien et affichera le lien direct.


la source
0

Avez-vous essayé de transmettre l'URL de redirection à wget? Parfois, ils travaillent pour moi.

Voici un exemple de 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]

La version que j'utilise:

$ wget --version
GNU Wget 1.10.2 
Leonel Martins
la source
0

Il y avait un addon pour Firefox appelé Splitlink . Cela ne fonctionne pas pour Firefox 3+, mais cela fonctionnait dans Firefox 2. Si vous pouvez le trouver n'importe où (ce n'est plus sur la page officielle des addons), cela vous donnera plus d'informations sur l'URL réelle.

alex
la source
-1

L'URL de copie de Firefox est certainement le plus simple. wget (comme la question a été marquée) est également une bonne solution car vous pouvez voir tous les rebonds intermédiaires, pas seulement l'URL finale:

$ 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

Jordan
la source
-1

Si vous souhaitez qu'un gestionnaire de téléchargement gère le téléchargement au lieu de Firefox, vous pouvez utiliser l'addon Flashgot Firefox.

vtest
la source
-1

Vous pouvez utiliser l' netcatoutil (qui est souvent inclus avec les distributions Linux) sur le port 80 du site Web. Cela affiche la réponse HTTP brute complète, y compris les en-têtes contenant l'URL de destination de la redirection. C'est l' un des moyens les plus directs pour obtenir l'emplacement de redirection, puisque vous faites la même chose que les téléchargeurs font quand ils suivent réoriente. Voici un exemple pour l'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...

Alternativement, de nombreux navigateurs affichent l'URL de téléchargement réelle dans la Downloadssection. Dans ceux-ci, vous pouvez démarrer le téléchargement et l'annuler immédiatement, puis copier l'URL (à partir de l'historique de téléchargement).

Abbafei
la source