web-dev-qa-db-fra.com

Comment travailler avec l'agent utilisateur pour télécharger une page Web à l'aide de Wget

J'essaie de télécharger cette page en utilisant Wget. Voici le lien de la page:

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&rt=nc&item=250972882769&si=a8iGAIchyvEbn7KveYFZ5QbEE7o%3D&print=all&category=31387

Et voici mon cmd:

wget -O ebay.html --user-agent = "Mozilla/5.0 (Windows NT 5.2; rv: 2.0.1) Gecko/20100101 Firefox/4.0.1" " http://cgi.ebay.com /ws/eBayISAPI.dll?ViewItem&rt=nc&item=250972882769&si=a8iGAIchyvEbn7KveYFZ5QbEE7o%3D&print=all&category=31387 "

Lorsque je l'utilise pour accéder à la page à l'aide d'un navigateur, cela fonctionne bien. Lorsque j'utilise Wget, il télécharge une autre page, pas l'original. Je pense que le problème concerne l'agent utilisateur. Quelle est la solution?

17
qmaruf

Le problème n'est pas l'agent utilisateur, c'est un ou des cookies manquants. La solution est

  1. Récupérez la page produit normale avec wget --save-cookies = ebay-cookies,
  2. Pêchez l'URL du lien "Imprimer" à partir de ce fichier HTML. (Je l'ai fait à la main, vous devez évidemment écrire un script pour le faire.)
  3. Récupérez l'URL "Imprimer" avec wget --load-cookies = ebay-cookies

Je l'ai essayé avec une page de produit aléatoire; ça a marché.

13
Kyle Jones