Ich versuche, eine URL herunterzuladen , die wie folgt ist http://www.somesite.com/restaurants.html#photo=22x00085
.
Ich habe es zwischen einfache Anführungszeichen gesetzt, aber es lädt nur http://www.somesite.com/restaurants.html herunter, was nicht die richtige Seite ist.
Gibt es eine Lösung?
Antworten:
wget
funktioniert gut. Die URI-Syntax gibt an, dass das Fragment - das#foo
Teil - vollständig clientseitig interpretiert und beim Abrufen des Dokuments selbst nicht verwendet werden soll.Wenn es sich beispielsweise um eine HTML-Seite handelt, kann der Browser zu einem benannten Abschnitt scrollen oder - in Ihrem Fall - einen JavaScript-Code auslösen, der ein bestimmtes Foto anzeigt.
Mit anderen Worten, soweit
wget
es die URIs betriffthttp://www.somesite.com/restaurants.html#photo=22x00085
undhttp://www.somesite.com/restaurants.html
... auf dieselbe Seite zeigen
/restaurants.html
. Den Rest erledigt Ihr Browser. Das Öffnenrestaurants.html#photo=22x00085
im Browser sollte einwandfrei funktionieren.quelle
Ohne den richtigen Link zu besuchen, kann ich nicht sagen, um welchen es sich handelt, aber es gibt nur zwei Möglichkeiten:
Der Hash ist tatsächlich Teil des Namens des angeforderten Dokuments. In diesem Fall können Sie es codieren:
Im anderen Fall sollten unter normalen Umständen http://www.somesite.com/restaurants.html und http://www.somesite.com/restaurants.html#photo=22x00085 auf dieselbe Seite verweisen. Der Abschnitt nach dem Hash gibt lediglich den Anker an, zu dem der Browser nach dem Laden der Seite scrollen soll. Es wird nicht einmal an den Server gesendet.
Es ist jedoch möglich, dass der Hash (ab) zum Laden eines bestimmten Fotos mit JavaScript verwendet wird. Wget kann JavaScript nicht interpretieren, daher können Sie nichts dagegen tun.
quelle
Das ist nicht die URL für das Bild. Dies ist die URL für eine Seite, die ein Skript oder einen anderen Code zum Abrufen des Bildes verwendet. Versuchen Sie, die Seite mit deaktiviertem JavaScript zu laden. Das ist es, was wget für Sie holt.
Um die URL für das Bild zu finden, besuchen Sie die Seite über Ihren Browser und klicken Sie mit der rechten Maustaste auf das Foto. Es sollte eine Option zum Anzeigen von Informationen zum Bild geben, einschließlich seiner URL.
Wenn dies nicht funktioniert, liegt dies möglicherweise daran, dass das Image über Flash oder ein anderes clientseitiges Programm geladen wird. Sie können Fiddler oder Wireshark verwenden, um zu beobachten, welche URL geladen wird.
Wenn Sie uns die tatsächliche URL der Site mit dem Bild mitteilen, können wir Ihnen dabei helfen, festzustellen, wie das Bild geladen wird.
quelle