[wget] referer probleem

Pagina: 1
Acties:

  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 13:36
Waarom krijg ik met de volgende opdracht:

wget --referer="gathering.tweakers.net" bla.bla.nl/GoTtagMaker/viewallimages.php?galleryid=134 -O file.html --page-requisites

geen plaatjes binnen? Probeer een webpagina in z'n geheel binnen te halen omdat m'n linux machine blijkbaar geen referers meestuurt wanneer ik de pagina probeer op te slaan in IE. Krijg nu alleen de HTML en css, geen pics!

  • dawuss
  • Registratie: Maart 2001
  • Laatst online: 01-02 20:46

dawuss

gadgeteer

Quote uit de wget manpage:
-p
--page-requisites
This option causes Wget to download all the files that are neces-
sary to properly display a given HTML page. This includes such
things as inlined images, sounds, and referenced stylesheets.

Ordinarily, when downloading a single HTML page, any requisite doc-
uments that may be needed to display it properly are not down-
loaded. Using -r together with -l can help, but since Wget does
not ordinarily distinguish between external and inlined documents,
one is generally left with ``leaf documents'' that are missing
their requisites.

For instance, say document 1.html contains an "<IMG>" tag referenc-
ing 1.gif and an "<A>" tag pointing to external document 2.html.
Say that 2.html is similar but that its image is 2.gif and it links
to 3.html. Say this continues up to some arbitrarily high number.

If one executes the command:

wget -r -l 2 http://<site>/1.html

then 1.html, 1.gif, 2.html, 2.gif, and 3.html will be downloaded.
As you can see, 3.html is without its requisite 3.gif because Wget
is simply counting the number of hops (up to 2) away from 1.html in
order to determine where to stop the recursion. However, with this
command:

wget -r -l 2 -p http://<site>/1.html

all the above files and 3.html's requisite 3.gif will be down-
loaded. Similarly,

wget -r -l 1 -p http://<site>/1.html

will cause 1.html, 1.gif, 2.html, and 2.gif to be downloaded. One
might think that:

wget -r -l 0 -p http://<site>/1.html

would download just 1.html and 1.gif, but unfortunately this is not
the case, because -l 0 is equivalent to -l inf---that is, infinite
recursion. To download a single HTML page (or a handful of them,
all specified on the command-line or in a -i URL input file) and
its (or their) requisites, simply leave off -r and -l:

wget -p http://<site>/1.html

Note that Wget will behave as if -r had been specified, but only
that single page and its requisites will be downloaded. Links from
that page to external documents will not be followed. Actually, to
download a single page and all its requisites (even if they exist
on separate websites), and make sure the lot displays properly
locally, this author likes to use a few options in addition to -p:

wget -E -H -k -K -p http://<site>/<document>

To finish off this topic, it's worth knowing that Wget's idea of an
external document link is any URL specified in an "<A>" tag, an
"<AREA>" tag, or a "<LINK>" tag other than "<LINK
REL="stylesheet">".
Heb je --mirror al geprobeerd?
Ik vermoed dat de links ge-hotlinked zijn, en dat wget ze daarom niet meeneemt, omdat ze in een ander domein liggen.
Je kunt dat domein toevoegen met de optie --domains.

[ Voor 21% gewijzigd door dawuss op 05-03-2005 00:14 ]

micheljansen.org
Fulltime Verslaafde Commandline Fetisjist ©


  • Gondor
  • Registratie: September 2003
  • Laatst online: 14:24
Ik begrijp niet precies wat de situatie is maar, het is niet je OS die referers wel/niet stuurt, dat is de taak van je browser.

Gebruik je IE met wine of soort gelijke?

"Peace cannot be kept by force. It can only be achieved by understanding"-Albert Einstein-


  • dawuss
  • Registratie: Maart 2001
  • Laatst online: 01-02 20:46

dawuss

gadgeteer

Gondor schreef op zaterdag 05 maart 2005 @ 00:17:
Ik begrijp niet precies wat de situatie is maar, het is niet je OS die referers wel/niet stuurt, dat is de taak van je browser.

Gebruik je IE met wine of soort gelijke?
offtopic:
Hij wil met wget een pagina recursief downloaden die alleen toegang toestaat vanaf een referer. Daar komt geen browser aan te pas :)

micheljansen.org
Fulltime Verslaafde Commandline Fetisjist ©


  • Gondor
  • Registratie: September 2003
  • Laatst online: 14:24
dawuss schreef op zaterdag 05 maart 2005 @ 00:19:
[...]

offtopic:
Hij wil met wget een pagina recursief downloaden die alleen toegang toestaat vanaf een referer. Daar komt geen browser aan te pas :)
Hmm, maar:

Dit is de vraag:
iCe01 schreef op zaterdag 05 maart 2005 @ 00:01:
Waarom krijg ik met de volgende opdracht:

wget --referer="gathering.tweakers.net" bla.bla.nl/GoTtagMaker/viewallimages.php?galleryid=134 -O file.html --page-requisites

geen plaatjes binnen?
Daar heb jij antwoord op gegeven.

Dit is, ik neem aan, wat achtergrond info:
Probeer een webpagina in z'n geheel binnen te halen omdat m'n linux machine blijkbaar geen referers meestuurt wanneer ik de pagina probeer op te slaan in IE. Krijg nu alleen de HTML en css, geen pics!
Omdat linux geen referer stuurt kan hij geen pagina opslaan met IE :?

Ik vind het wel raar. Maar goed.

/offtopic

"Peace cannot be kept by force. It can only be achieved by understanding"-Albert Einstein-


  • dawuss
  • Registratie: Maart 2001
  • Laatst online: 01-02 20:46

dawuss

gadgeteer

Gondor schreef op zaterdag 05 maart 2005 @ 00:31:
Omdat linux geen referer stuurt kan hij geen pagina opslaan met IE :?

Ik vind het wel raar. Maar goed.

/offtopic
OK, nu ben ik ook de weg kwijt :P

In ieder geval is wget voorzien van een erg goede manpage, dus als je die even op je gemak doorleest kom je een heel eind :)

Edit: Nog een kleine voetnoot: wget respecteert robots.txt
Als je daar een melding over ziet verschijnen, weet je hoe laat het is. (Deze feature is overigens gewoon uit te schakelen door een .wgetrc in je homedir te plaatsen met de juiste opties).

[ Voor 25% gewijzigd door dawuss op 05-03-2005 00:35 ]

micheljansen.org
Fulltime Verslaafde Commandline Fetisjist ©


  • Wilke
  • Registratie: December 2000
  • Laatst online: 10:39
De referrer die je meegeeft is sowieso geen geldige URL en zou dus nooit in deze vorm door een browser meegestuurd worden (als het goed is).

Verduidelijking: ik bedoel dus dat er geen 'http://' voor staat.

[ Voor 20% gewijzigd door Wilke op 05-03-2005 15:54 ]


  • jsiegmund
  • Registratie: Januari 2002
  • Laatst online: 13:36
Okee, zal die opties eens gaan uitpluizen. Het probleem is ook raar: ik kan met IE wel de betreffende pagina openen en bekijken, inclusief al het beeldmateriaal. Maar wanneer ik die pagina dan probeer op te slaan op schijf met opslaan als in IE worden de plaatjes weer niet meegenomen, raar maar waar!

Ter verduidelijking: die linux machine zit dus tussen de Windows machine en het Internet in :)

[ Voor 15% gewijzigd door jsiegmund op 05-03-2005 16:43 ]

Pagina: 1