Wie lade ich Weblinks mit wget herunter, die nicht mit .html enden?

2

Ich möchte diese Webseite mit wget in Win7 herunterladen: http://www.att.com/shop/wireless/devices/smartphones.deviceListView.xhr.flowtype-NEW.deviceGroupType-Cellphone.paymentType-postpaid.packageType-undefined.html?commitmentTerm=24&taxoStyle=SMARTPHONES&showMoreListSize=1000

Ich benutze diesen Befehl, um dies zu tun:

wget -E -H -k -K -p -e robots=off -P /Downloads/AT&T_2013-01-29/ http://www.att.com/shop/wireless/devices/smartphones.deviceListView.xhr.flowtype-NEW.deviceGroupType-Cellphone.paymentType-postpaid.packageType-undefined.html?commitmentTerm=24&taxoStyle=SMARTPHONES&showMoreListSize=1000

Ich erhalte einen nicht definierten Taxostyle, einen nicht definierten Commitmentterm oder einen erkennbaren Methodenfehler

atams
quelle

Antworten:

0

Sie haben zwei Et-Zeichen ( &) und ein Fragezeichen in Ihrer URL.

Ich bin nicht sicher, wie Ihre Windows-Shell damit umgeht, es hängt wahrscheinlich davon ab, was Sie verwenden. (Cmd.exe? Powershell, Hamilton C-Shell für Windows, Cygwin-Bash?)

Unabhängig davon werden viele von denen versuchen, diese zu analysieren, und Sie werden am Ende ein anderes Ergebnis erzielen, als Sie erwarten. Sie müssten entweder diese Zeichen (wie hängt von der Shell ab) zu entkommen, oder "Marken verwenden.

Wenn ich wget -E -H -k -K -p -e robots=off "http://www.att.com/shop/wireless/devices/smartphones.deviceListView.xhr.flowtype-NEW.deviceGroupType-Cellphone.paymentType-postpaid.packageType-undefined.html?commitmentTerm=24&taxoStyle=SMARTPHONES&showMoreListSize=1000" in der bash3-Shell auf BSD verwende (beachten Sie die hinzugefügten Anführungszeichen um die Download-URL), scheint der Befehl zu funktionieren. (Es werden 3 Verzeichnisse heruntergeladen, 2.ecom.attccc.com, 3.ecom.attccc.com und www.att.com.)


Alternativ können Sie Ihre URL unverändert in eine DATEI einfügen (eine in einer Zeile) und -i FILEstatt der eigentlichen URL zusätzliche Parameter an wget übergeben. Ein weiterer Fall zu überprüfen , was wirklich von Ihrem Befehl wget geben wird , ist echoes, wie dies echo HERE_IS_URLund wenn Ausgang akzeptabel ist, können Sie replase echomit wgetoder Rohr es vorwärts mit | wget -i-.

Hennes
quelle