Как работать с пользовательским агентом для загрузки веб-страницы с помощью Wget

17

Я пытаюсь загрузить эту страницу с помощью Wget. Вот ссылка на страницу:

  

Ссылка

И вот мой cmd:

  

wget -O ebay.html --user-agent="Mozilla / 5.0 (Windows NT 5.2; rv: 2.0.1) Gecko / 20100101 Firefox / 4.0.1" " Ссылка "

Когда я использую его для доступа к странице с помощью браузера, он отлично работает. Когда я использую Wget, он загружает другую страницу, а не оригинальную. Я думаю, что проблема заключается в пользовательском агенте. Какое решение?

    
задан qmaruf 15.01.2012 в 19:03
источник
  • Попробуйте использовать Fiddler и посмотрите структуру http-запроса при открытии URL-адреса в своем браузере. просто подражайте структуре в вашей команде wget. –  Alon Amir 15.01.2012 в 19:13
  • вы можете привести простой пример? –  qmaruf 15.01.2012 в 19:52

1 ответ

13

Проблема не в пользовательском агенте, это недостающий файл cookie или куки. Решение

  1. Получить обычную страницу продукта с помощью wget -save-cookies = ebay-cookies,
  2. Удалите URL-адрес ссылки «Печать» из этого файла HTML. (Я сделал это вручную, вы должны, очевидно, написать сценарий, чтобы сделать это.)
  3. Получить URL-адрес «Печать» с помощью wget -load-cookies = ebay-cookies

Я попробовал это со случайной страницей продукта; он работал.

    
ответ дан Kyle Jones 22.01.2012 в 01:58
  • , как вы узнали, что ebay-cookies - это слово, которое можно включить, если я сделаю это с каким-либо другим сайтом, как узнать, какие куки для включения –  Registered User 08.11.2013 в 06:20
  • ebay-cookies - это просто имя файла, в котором я выбрал сохранение файлов cookie. Используйте любое имя, которое вам нравится. Важной частью является использование -save-cookies для сохранения файлов cookie сайта и загрузки файлов cookie для загрузки и отправки их на веб-сайт. –  Kyle Jones 08.11.2013 в 06:24