So ermitteln Sie die tatsächliche Download-URL auf Download-Sites, die Weiterleitungen verwenden


54

Angenommen, ich möchte etwas herunterladen, wgetaber die Website mit den Dateien, die ich benötige, wird auf eine Website umgeleitet, die automatisch eine Spiegelung für mich auswählt (und es wird keine statische Datei-URL bereitgestellt).

Das Herunterladen von solchen Websites funktioniert mit Firefox. Wie erhalte ich jedoch eine echte URL (nicht nur den Link zur Weiterleitungsseite), mit der ich diese Dateien herunterladen kann wget?


3
Die Antwort von Breakthrough funktioniert, aber worum geht es dann? Lassen Sie FF einfach den Download beenden. Können Sie Ihrer Frage weitere Details hinzufügen? Ich gehe davon aus, dass Sie versuchen, das Herunterladen über eine Art Skript zu automatisieren und wget nicht nur für Gits-n-Shiggles zu verwenden.
Yoopergeek

2
wenn Sie mit firefox herunterladen direkt auf Ihrem Download in Download - Fenster klicken und kopieren herunterladen Link
Am1rr3zA

2
@Yoopergeek: Seine Antwort hilft, wenn die Datei extrem groß ist und Sie sie in einen Download-Manager stellen möchten. ;)
cp2141

@Yoopergeek: Das OP erwähnte auch "wget", ein Linux / Unix-Befehlszeilen-Tool zum Übertragen einer Datei ohne Windows-Benutzeroberfläche. Solche Tools sind praktisch, wenn Sie eine virtuelle Maschine in der Cloud ausführen und Software herunterladen müssen. Da wget nur versucht, eine Datei abzurufen und keine Werbung anzuzeigen, während auf die Auswahl eines Spiegels gewartet wird, ist die direkte URL von entscheidender Bedeutung.
Mightypile

1
Cliget Addon gibt Ihnen einen Curl-Befehl zum Kopieren und Einfügen in den Download-Dialog. addons.mozilla.org/en-US/firefox/addon/cliget
Dagelf

Antworten:


52

Wenn Sie die Übertragung in Firefox gestartet haben, brechen Sie sie ab, klicken Sie mit der rechten Maustaste auf den Download und klicken Sie auf "Download-Link kopieren". Wenn Sie eine ältere Version verwenden, klicken Sie mit der rechten Maustaste darauf und klicken Sie auf "Eigenschaften". Der Link wird in dem sich öffnenden Fenster angezeigt.

Führen Sie in Chrome den Download wie gewohnt aus und gehen Sie dann zu Menü - Downloads - und Sie sollten den Direktlink sehen, der verwendet wurde. Oder drücken Sie Ctrl+ J, um das Fenster zu öffnen.


1
Ja, das wäre viel einfacher als ich vorgeschlagen habe!
Arathorn

Auch meine Gedanken, Arathorn. Ich hatte angefangen, eine Antwort zu schreiben, um den Tab 'net' in Firebug zu verwenden, aber das ist viel einfacher!
Matt

1
Dies scheint auf Github nicht zu funktionieren (ich habe es in Firefox, Chrome, Safari versucht). Bsp .: nodeload.github.com/jverzani/gWidgets2/tarball/master
Etienne Low-Décarie

cmd + shift + j auf Mac
tommy.carstensen

18

Sie können die LiveHTTPHeaders- Erweiterung verwenden, um die tatsächliche URL der heruntergeladenen Datei zu ermitteln. (Achten Sie besonders auf die GETs.)


1
Das ist eine coole Idee, ich werde es versuchen. Ich würde abstimmen, wenn nicht meine niedrige rep;)
Phil

irgendwas für chrom?
Anwar

Ich weiß, dass dies ein alter Thread ist, wollte aber meine +1 für diese Antwort geben. Die beste Lösung ist in den meisten Fällen definitiv akzeptabel. In meinem habe ich eine Inventar-Web-GUI, die ich einfach alle meine Geräte im CSV-Format mithilfe ihrer Exportschaltfläche exportieren wollte. Um dieses Skript verfügbar zu machen, habe ich Ihren Rat "Behalten Sie GET im Auge" und die Registerkarte "Netzwerk" in F12 überprüft, um die Datei anzuzeigen, die beim Export heruntergeladen wurde. Von dort aus können Sie zumindest in Chrome mit der rechten Maustaste auf diese Datei klicken und kopieren> als cURL kopieren. Ich habe den Gerätenamen als Variable in den Link eingesetzt und ihn in eine for-Schleife in bash to curl
user2856414

16

Obwohl ich wget auch mag, benutze ich ein anderes ähnliches Tool: cURL . cURL hat speziell eine Funktion, um Weiterleitungen ( -L / --location) zu folgen , und es ist auch kostenlos wie wget. Ich schlage vor, beide im Werkzeuggürtel zu lassen. Sie haben einige ergänzende Funktionen.

Hier ist ein interessanter Artikel darüber, wie man mit wget oder cURL von einer Site herunterlädt, die Cookies zur Authentifizierung verwendet. Es gibt eine Erwähnung der Funktion cURL --Location, um Weiterleitungen zu folgen. (Tatsächlich scheint es mir, als ob wget, basierend auf keinem speziellen Flag, das für wget erwähnt wurde, implizit Weiterleitungen folgen könnte.?)


5

Dies ist die Antwort, nach der Sie gesucht haben!

Es gibt nur eine idiotensichere Ein-Klick-Lösung: Cliget

Es gibt Ihnen einen Curl-Befehl mit Kopfzeilen, Cookies und allem, mit einer Schaltfläche zum Kopieren in die Zwischenablage, direkt im Download-Dialogfeld.

Für Firefox : https://addons.mozilla.org/en-US/firefox/addon/cliget

Ich verlinke curlwget für Chrome hier nicht, weil es hässlich ist. Bitte aktualisieren Sie diese Antwort, wenn Chrome ein ebenso elegantes Äquivalent erhält.


Danke! Es funktionierte wie ein Zauber
mudassirkhan19

4

In diesen Situationen starte ich zuerst den eigentlichen Download und pausiere ihn und kopiere die URL.


1
Kopieren Sie es von wo?
Phil

1
Wenn Sie den Download im Firefox-Download-Fenster anhalten, bevor er abgeschlossen ist, können Sie mit der rechten Maustaste klicken und die URL abrufen (haben Sie dies getan, um die URL wgetmanchmal auszulösen ).
Nik

3

Ich benutze normalerweise das Firefox DownThemAll- Addon, wenn es viele Links zum Herunterladen gibt und ich bestimmte URLs auswählen muss.

Es zeigt die vollständige URL an und ermöglicht das Hinzufügen im angehaltenen Modus, sodass Sie den Download starten können, wenn Sie möchten.

Als zusätzliche Funktion können Sie die URL abrufen und den Download insgesamt überspringen.
Wenn Sie jedoch die Datei herunterladen müssen, eignet sich DownThemAll recht gut als Beschleuniger.


2

Kannst du wget nicht direkt mit der --trust-server-nameFlagge benutzen ? Es wird heruntergeladen und mit dem Dateinamen gespeichert, zu dem es umgeleitet wird.


1

Ihre Frage ist etwas unklar. Hier gibt es zwei URLs: die, die Sie verwenden, und die, die nach der Umleitung zurückgekehrt ist. Das erste sollten Sie wissen, da es von Ihrem Computer stammt, während das zweite in Ihrem Browser angezeigt wird. Wenn sich die Frage darauf bezieht, wo sich die Datei auf dem umgeleiteten Server befindet, können Sie dies nicht feststellen.

Wenn Sie versuchen, die an den Server gesendeten Anrufe zu debuggen, können Sie das Firefox-Add-On von Firebug verwenden. Ältere Versionen davon gibt es hier: https://addons.mozilla.org/en-US/firefox/addons/ versions / 1843 .


1
ehrlich gesagt verstehe ich nicht, was in meiner frage so unklar ist, einige plakate unten haben sogar wirklich verstanden;)
Phil

Wenn Ihr einziges Problem darin besteht, nur die URL abzurufen, funktioniert das Anhalten des Downloads nur für große Dateien, es sei denn, Sie sind sehr schnell. Sie finden diese Informationen viel einfacher in der Liste des Download-Managers: Klicken Sie mit der rechten Maustaste, und klicken Sie auf den Link Download kopieren.
Harrymc

An den Abwähler: Verschwenden Sie nicht Ihre Zeit hier - dies ist ein sehr alter Beitrag, der möglicherweise nicht auf Sie zutrifft.
Harrymc


0

Sie können IDM (Internet Download Manager) verwenden, wenn Sie auf den nicht direkten Download-Link klicken. Der Link wird umgeleitet und der direkte Link wird angezeigt.


0

Haben Sie versucht, die Weiterleitungs-URL an wget weiterzuleiten? Manchmal arbeiten sie für mich.

Hier ein Beispiel von 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]

Die Version, die ich benutze:

$ wget --version
GNU Wget 1.10.2 

0

Für Firefox gab es ein Addon namens Splitlink . Es funktioniert nicht für Firefox 3+, aber es hat in Firefox 2 funktioniert. Wenn Sie es irgendwo finden können (es befindet sich nicht mehr auf der offiziellen Addons-Seite), erhalten Sie mehr Informationen über die tatsächliche URL.


-1

Die Firefox-Kopier-URL ist definitiv die einfachste. wget (wie die Frage getaggt wurde) ist auch eine schöne Lösung, da Sie alle Zwischen-Bounces sehen können, nicht nur die endgültige URL:

$ 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


-1

Wenn Sie möchten, dass ein Download-Manager den Download anstelle von Firefox übernimmt, können Sie das Firefox-Addon Flashgot verwenden.


-1

Sie können das netcatTool (das häufig in Linux-Distributionen enthalten ist) auf Port 80 der Website verwenden. Hier wird die vollständige unformatierte HTTP-Antwort einschließlich der Header angezeigt, die die Umleitungsziel-URL enthalten. Dies ist eine der direktesten Methoden zum Abrufen des Umleitungsverzeichnisses, da Sie die gleichen Aktionen ausführen wie Downloader, wenn sie Umleitungen folgen. Hier ist ein Beispiel für die 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

...oder...

Alternativ zeigen viele Browser die tatsächliche Download-URL im DownloadsAbschnitt an. In diesen können Sie den Download starten und sofort abbrechen und dann die URL (aus dem Download-Verlauf) kopieren.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.