Jak znaleźć prawdziwy adres URL pobierania na stronach pobierania, które używają przekierowań

54

Powiedzmy, że chcę coś pobrać, wgetale strona internetowa z plikami, których potrzebuję, przekierowuje do strony, która automatycznie wybiera dla mnie kopię lustrzaną (i nie podano statycznego adresu URL pliku).

Pobieranie z takich stron działa z Firefoksem, ale w jaki sposób mogę uzyskać prawdziwy adres URL (nie tylko link do strony przekierowującej), aby móc pobrać te pliki wget?

Phil
źródło
3
Odpowiedź na przełom działa, ale o co w tym chodzi? Pozwól FF zakończyć pobieranie. Czy możesz dodać więcej szczegółów do swojego pytania? Zgaduję, że próbujesz zautomatyzować pobieranie za pomocą jakiegoś skryptu, a nie używać wget tylko do gits-n-shiggles.
Yoopergeek,
2
podczas pobierania za pomocą Firefoksa kliknij prawym przyciskiem myszy okno pobierania w oknie pobierania i wybierz link do kopiowania pobierania
Am1rr3zA 10.09.2009
2
@Yoopergeek: Jego odpowiedź pomaga, jeśli plik jest bardzo duży i chcesz umieścić go w menedżerze pobierania. ;)
cp2141
@Yoopergeek: OP wspomniał także o „wget”, który jest narzędziem wiersza poleceń systemu Linux / Unix do przesyłania pliku bez żadnego interfejsu użytkownika Windowsy. Takie narzędzia przydają się, gdy używasz maszyny wirtualnej w chmurze i potrzebujesz pobrać oprogramowanie. Ponieważ wget próbuje tylko pobrać plik, a nie wyświetla reklamy, gdy czeka na wybranie kopii lustrzanej, bezpośredni adres URL jest niezbędny.
mightypile
1
Dodatek Cliget daje polecenie curl do skopiowania i wklejenia w oknie dialogowym pobierania. addons.mozilla.org/en-US/firefox/addon/cliget
Dagelf

Odpowiedzi:

52

Po rozpoczęciu przesyłania w przeglądarce Firefox anuluj go, kliknij prawym przyciskiem myszy plik do pobrania i kliknij „Kopiuj link do pobrania”. Jeśli używasz starszej wersji, kliknij ją prawym przyciskiem myszy i kliknij „Właściwości”, a link pojawi się w oknie, które zostanie otwarte.

W Chrome - uruchom pobieranie w normalny sposób - a następnie przejdź do Menu - Pobieranie - powinieneś zobaczyć bezpośredni link, który został użyty. Lub naciśnij Ctrl+, Jaby otworzyć okno.

Przełom
źródło
1
Tak, byłoby to o wiele prostsze niż to, co zasugerowałem!
arathorn
moje myśli, arathorn. Zacząłem pisać odpowiedź, aby użyć karty „netto” w Firebug, ale jest to o wiele prostsze!
Matt
1
Nie działa to na mnie na github (próbowałem w Firefox, Chrome, Safari). np .: nodeload.github.com/jverzani/gWidgets2/tarball/master
Etienne Low-Décarie
cmd + shift + j na Macu
tommy.carstensen
18

Możesz użyć rozszerzenia LiveHTTPHeaders, aby określić rzeczywisty adres URL pobieranego pliku. (Zwróć szczególną uwagę na GET.)

arathorn
źródło
1
to fajny pomysł, spróbuję tego. zagłosowałbym, gdyby nie mój niski przedstawiciel;)
Phil
coś dla chromu?
Anwar
Wiem, że to stary wątek, ale chciałem dać +1 za tę odpowiedź. Najlepsze rozwiązanie jest zdecydowanie dopuszczalne w większości przypadków. W moim mam GUI do inwentaryzacji, z którego chciałem łatwo wyeksportować wszystkie moje urządzenia w formacie CSV za pomocą przycisku eksportu. Aby ten skrypt był skryptowalny, wziąłem twoją radę „miej oko na GET” i sprawdziłem kartę sieciową w F12, aby zobaczyć plik, który był pobierany przez eksport. Stamtąd, przynajmniej w chrome, możesz kliknąć ten plik prawym przyciskiem myszy i skopiować> skopiować jako cURL.
Podmieniłem
16

Chociaż lubię też wget, używam innego podobnego narzędzia: cURL . cURL ma funkcję śledzenia przekierowań ( -L / --location), a także jest darmowy jak wget. Proponuję trzymać oba w swoim pasku narzędzi; mają pewne uzupełniające się cechy.

Oto interesujący artykuł na temat tego, jak używać wget lub cURL do pobierania ze strony, która używa plików cookie do uwierzytelniania. Jest wzmianka o funkcji cURL --lokalizacja, aby śledzić przekierowania. (W rzeczywistości, w oparciu o żadną specjalną flagę wymienioną dla wget, wydaje mi się, że wget może bezwzględnie śledzić przekierowania ..?)

Chris W. Rea
źródło
5

Oto odpowiedź, której szukasz!

Istnieje tylko jedno niezawodne rozwiązanie za jednym kliknięciem: cliget

Daje ci polecenie zawijania z nagłówkami, ciasteczkami i wszystkim, z przyciskiem kopiowania do schowka, bezpośrednio w oknie pobierania.

W przypadku przeglądarki Firefox : https://addons.mozilla.org/en-US/firefox/addon/cliget

Nie łączę tutaj curlwget z Chrome, ponieważ jest brzydki. Zaktualizuj tę odpowiedź, jeśli Chrome uzyska równie elegancki odpowiednik.

Dagelf
źródło
Dziękuję Ci! Działa jak urok
mudassirkhan19
4

W takich sytuacjach Najpierw rozpoczyna się właściwe pobieranie, wstrzymuję je i kopiuję adres URL.

ukanth
źródło
1
skopiuj to skąd?
Phil
1
Jeśli wstrzymasz pobieranie w oknie pobierania Firefoksa przed jego zakończeniem, możesz kliknąć prawym przyciskiem myszy i pobrać adres URL ( wgetczasami robisz to, aby uruchomić URL ).
nik
3

Zwykle używam dodatku Firefox DownThemAll, gdy jest wiele linków do pobrania i muszę wybrać określone adresy URL.

Pokazuje pełny adres URL i umożliwia dodawanie w trybie wstrzymanym, aby można było rozpocząć pobieranie w dowolnym momencie.

Jako dodatkową funkcję możesz pobrać adres URL i całkowicie pominąć pobieranie.
Jednak jeśli musisz pobrać plik, DownThemAll jest całkiem dobry jako akcelerator.

nik
źródło
2

Nie możesz użyć wget bezpośrednio przy użyciu --trust-server-nameflagi? Będzie pobierał i zapisywał przy użyciu nazwy pliku, do którego przekierowuje.

Zitrax
źródło
1

Twoje pytanie jest trochę niejasne. Są tutaj 2 adresy URL: ten, którego używasz, i ten, który wrócił po przekierowaniu. Pierwszy powinieneś wiedzieć, ponieważ pochodzi on z komputera, a drugi to ten, który wyświetla się w przeglądarce. Jeśli pytanie dotyczy tego, gdzie plik znajduje się na przekierowanym serwerze, nie ma sposobu, aby się dowiedzieć.

Jeśli próbujesz debugować wywołania skierowane do serwera, możesz użyć dodatku firefox programu firebug, starsze wersje istnieją tutaj: https://addons.mozilla.org/en-US/firefox/addons/ wersje / 1843 .

harrymc
źródło
1
szczerze mówiąc, nie rozumiem, co jest tak niejasne w moim pytaniu, niektóre plakaty poniżej nawet faktycznie zrozumiały;)
Phil
Jeśli jedynym problemem jest tylko uzyskanie adresu URL, wstrzymanie pobierania działa tylko w przypadku dużych plików, chyba że jesteś bardzo szybki. O wiele prościej jest po prostu znaleźć te informacje na liście menedżera pobierania: kliknij prawym przyciskiem myszy i zrób kopię linku do pobrania.
harrymc
Do downvoter: Nie marnuj tutaj czasu - jest to bardzo stary post i może Cię nie dotyczyć.
harrymc,
0

Możesz użyć IDM (Internet Download Manager), gdy klikniesz link do bezpośredniego pobierania, przekieruje on link i wyświetli bezpośredni link.


źródło
0

Czy próbowałeś przekazać adres URL przekierowania do wget? Czasami pracują dla mnie.

Oto przykład z 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]

Wersja, której używam:

$ wget --version
GNU Wget 1.10.2 
Leonel Martins
źródło
0

Był dodatek do przeglądarki Firefox o nazwie Splitlink . Nie działa w Firefoksie 3+, ale działał w Firefoksie 2. Jeśli możesz go znaleźć gdziekolwiek (nie ma go już na oficjalnej stronie dodatków), dostarczy ci więcej informacji o prawdziwym adresie URL.

alex
źródło
-1

Adres URL kopii Firefox jest zdecydowanie najprostszy. wget (jak oznaczono pytanie) jest również dobrym rozwiązaniem, ponieważ możesz zobaczyć wszystkie pośrednie odrzuceń, a nie tylko końcowy adres 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

Jordania
źródło
-1

Jeśli chcesz, aby menedżer pobierania obsługiwał pobieranie zamiast firefox, możesz użyć dodatku firefox Flashgot.

vtest
źródło
-1

Możesz użyć tego netcatnarzędzia (które jest często dołączone do dystrybucji linuksa) na porcie 80 strony. Pokazuje pełną nieprzetworzoną odpowiedź HTTP, w tym nagłówki zawierające docelowy adres URL przekierowania. Jest to jeden z najbardziej bezpośrednich sposobów uzyskania lokalizacji przekierowania, ponieważ robisz to samo, co robią to osoby pobierające, gdy śledzą przekierowania. Oto przykład adresu 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

...lub...

Alternatywnie wiele przeglądarek wyświetla rzeczywisty adres URL pobierania w Downloadssekcji. W nich możesz rozpocząć pobieranie i anulować je od razu, a następnie skopiować adres URL (z historii pobierania).

Abbafei
źródło