Как использовать wget для загрузки с хостингов?

Как использовать wget для загрузки с хостингов?

wget — очень полезный инструмент для быстрой загрузки материалов из интернета, но могу ли я использовать его для загрузки с хостингов, таких как FreakShare, IFile.it Depositfiles, Uploaded, Rapidshare? Если да, то как это сделать?

решение1

Подобные сайты пытаются усложнить задачу отказа от использования графического веб-браузера, поскольку при использовании wget вы пропустите всю эту рекламу, которая оплачивает пропускную способность.

Некоторые сайты не выполняют расширенные проверки и их можно легко обмануть: скажите wget сделать вид, чтоэто действительно Mozillaи что этос сайта загрузки.

wget --user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1' \
     --referer=http://downloadsite.example.com/download-page-url
     http://downloadsite.example.com/download-page-url/filename.ext`

Большинство сайтов, которые выполняют проверку, позволяют вам обойтись без них --user-agent=Mozillaи --refererуказать URL-адрес загружаемого вами файла.

С некоторыми сайтами вам может потребоваться экспортировать куки-файлы веб-браузера и передать их --load-cookiesв wget; на этом этапе использование wget становится более трудоемким, чем ручная загрузка. Окончательный метод, который может работать все время, но требует некоторого кодирования для каждого сайта, заключается в использовании фреймворка автоматизации браузера, такого какСеленилиВатир.

Смотрите такжеАвтоматизируете веб-запросы с помощью curl?

решение2

Для Zippyshare:

Этот метод строится наответ Жиля. Как он сказал, трюк в том, чтобы заставить сервер думать, что запрос делается из браузера, и чтобы это произошло, вам нужно несколько вещей:

  • Ссылка для скачивания (фактическая ссылка на файл)
  • Ссылка-реферер (веб-страница с кнопкой загрузки)
  • Идентификатор сеанса Zippyshare (найден в файлах cookie)

Вот скриншот, поясняющий, где можно получить каждый предмет:

Скачать с Zippyshare

Теперь откройте терминал и используйте следующую команду (заменив необходимые элементы):

wget <download_link> \
--referer='<referrer>' \
--cookies=off --header "Cookie: JSESSIONID=<session_id>" \
--user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'

Пример:

wget http://www16.zippyshare.com/d/29887835/8895183/hello.txt \
--referer='http://www16.zippyshare.com/v/29887835/file.html' \
--cookies=off --header "Cookie: JSESSIONID=26458C0893BF69F88EB5743D74FE0F8C" \
--user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'

Примечание:В команде это на самом деле refererне такreferrer

решение3

Я также хотел бы получить более точные ответы. Я использовал следующий трюк для загрузки детского фильма для моего сына с Turbobit:

Вместо SESSION_ID из ответа выше вам нужно найти «compid» на вкладке cookie FIREBUG:

введите описание изображения здесь

После этого команда для моей встроенной системы Debian стала такой простой:

wget --referer='http://http://turbobit.net/download/free/yilmacr4e351' --cookies=off --header "Cookie: compid=c9255510c34624435292d8a0e7e405be66aa01f9%7ED01343F87AB53A2C38D957A564DA1D55" --user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1' http://turbobit.net/download/redirect/B3EDACDA9B899937A149D5AAB6662327/yilmacr4e351/Ters.Yuz.2015.1080P.WEBDL.TR.EN.mkv &

Теперь я могу выключить компьютер :)

Связанный контент