Пытаюсь скачать фильм.
Пишу в консоли:
wget -S --wait=12 --tries=30 --user=XXXXX --password=ХХХХХ -P /multimedia/films/ http://media.adsl.by/divx/somefile.avi
Начинает качать нормально:
--20:16:00-- http://media.adsl.by/divx/somefile.avi
=> `/multimedia/films/somefile.avi'
Распознаётся media.adsl.by... 81.25.32.14
Устанавливается соединение с media.adsl.by|81.25.32.14|:80... соединение установ лено.
Запрос HTTP послан, ожидается ответ...
HTTP/1.1 200 OK
Connection: close
Content-Type: application/octet-stream
Content-Length: 733996330
Cache-control: max-age=300
Date: Sun, 29 Jan 2006 20:14:35 +0200
Accept-Ranges: bytes
Server: Media Server V2.0b
[ => ] 21.170.712 550.43K/s
Но через некоторе время (это время каждый раз разное) получаю:
20:16:55 (381.38 KB/s) - `/multimedia/films/somefile.avi' сохранён [21170712]
Т.е. видно что докачивает не до конца. И все, больше он даже не пробует его докачивать. Как докачать нормально?
Пишу потом ту же команду, только добавляю параметр '-c'.
Получаю:
--20:15:34-- http://media.adsl.by/divx/somefile.avi
=> `/multimedia/films/somefile.avi'
Распознаётся media.adsl.by... 81.25.32.14
Устанавливается соединение с media.adsl.by|81.25.32.14|:80... соединение установ
лено.
Запрос HTTP послан, ожидается ответ...
HTTP/1.1 206 Partial Content
Connection: close
Content-Type: application/octet-stream
Content-Length: 671221564
Cache-control: max-age=300
Date: Sun, 29 Jan 2006 20:14:09 +0200
Accept-Ranges: bytes
Server: Media Server V2.0b
Повтор.
--20:15:36-- http://media.adsl.by/divx/somefile.avi
(попытка: 2) => `/multimedia/films/somefile.avi'
Устанавливается соединение с media.adsl.by|81.25.32.14|:80... соединение установ
лено.
Запрос HTTP послан, ожидается ответ...
HTTP/1.1 206 Partial Content
Connection: close
Content-Type: application/octet-stream
Content-Length: 671221564
Cache-control: max-age=300
Date: Sun, 29 Jan 2006 20:14:10 +0200
Accept-Ranges: bytes
Server: Media Server V2.0b
Повтор.
--20:15:38-- http://media.adsl.by/divx/somefile.avi
(попытка: 3) => `/multimedia/films/somefile.avi'
Устанавливается соединение с media.adsl.by|81.25.32.14|:80... соединение установ
лено.
Запрос HTTP послан, ожидается ответ...
HTTP/1.1 206 Partial Content
Connection: close
Content-Type: application/octet-stream
Content-Length: 671221564
Cache-control: max-age=300
Date: Sun, 29 Jan 2006 20:14:13 +0200
Accept-Ranges: bytes
Server: Media Server V2.0b
Повтор.
Т.е. он делает попытки, но докачивать так и не начинает. При это в FlashGet в виндах все работает и докачивает нормально.
Помогите, плиз!
Если нужно, это то, что пишет флэшгет, когда нормально докачивает:
Sun Jan 22 18:20:34 2006 Соединение с media.adsl.by:80
Sun Jan 22 18:20:34 2006 Соединяемся с media.adsl.by [IP=81.25.32.14:80]
Sun Jan 22 18:20:34 2006 Соединение установлено
Sun Jan 22 18:20:34 2006 GET /divx/somefile.avi HTTP/1.1
Sun Jan 22 18:20:34 2006 Host: media.adsl.by
Sun Jan 22 18:20:34 2006 Accept: */*
Sun Jan 22 18:20:34 2006 Referer: http://media.adsl.by/divx
Sun Jan 22 18:20:34 2006 User-Agent: Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)
Sun Jan 22 18:20:34 2006 Range: bytes=86239518-
Sun Jan 22 18:20:34 2006 Pragma: no-cache
Sun Jan 22 18:20:34 2006 Cache-Control: no-cache
Sun Jan 22 18:20:34 2006 Authorization: Basic MjE1MjJ2bGFkdjo5ZnhtZG5xMQ==
Sun Jan 22 18:20:34 2006 Connection: close
Sun Jan 22 18:20:34 2006 HTTP/1.1 206 Partial Content
Sun Jan 22 18:20:34 2006 Connection: close
Sun Jan 22 18:20:34 2006 Content-Type: application/octet-stream
Sun Jan 22 18:20:34 2006 Content-Length: 636190434
Sun Jan 22 18:20:34 2006 Cache-control: max-age=300
Sun Jan 22 18:20:34 2006 Date: Sun, 22 Jan 2006 18:19:30 +0200
Sun Jan 22 18:20:34 2006 Accept-Ranges: bytes
Sun Jan 22 18:20:34 2006 Server: Media Server V2.0b
Sun Jan 22 18:20:34 2006 Переход в состояние [Закачка]
wget + докачка. Как? (Не докачивает файл. Помогите!)
Модератор: /dev/random
-
- Сообщения: 832
- Статус: *BSD admin ;)
- ОС: *BSD =)
Re: wget + докачка. Как?
Юзера и пароль лучше прописать в конфиг, и может быть еще что то.
http://vap.org.ru/wget/
http://vap.org.ru/wget/
FreeBSD 6-stable
FreeBSD 5.5-stable
FreeBSD 5.5-stable
-
- Сообщения: 69
Re: wget + докачка. Как?
Я уже прочитал этот мануал. И настройки у меня wget берет из файла.
Маленькие файлы (песни) качает отлично, а вот с фильмом проблемы. Обрывается, и никак не хочет докачивать. Повторяю, в виндах FlashGet докачивает как нужно.
Ведь есть какое-то решение!!! Помогите!!!
Маленькие файлы (песни) качает отлично, а вот с фильмом проблемы. Обрывается, и никак не хочет докачивать. Повторяю, в виндах FlashGet докачивает как нужно.
Ведь есть какое-то решение!!! Помогите!!!
-
- Бывший модератор
- Сообщения: 3535
- Статус: OpenBSD-compatible
- ОС: OpenBSD -current
Re: wget + докачка. Как?
Там, видимо, EoF забился... Надо попробовать ещё чем-нибудь...
-
- Сообщения: 69
Re: wget + докачка. Как?
Нашел еще кое что.
Мои сообщения админам того сервера, с которого пытаюсь качать:
Пытаюсь скачать фильм используя wget. Если во время скачки возникает ошибка, то фильм докачать уже не возможно.
Такое ощущение, что медиа-сервер посылает неправильный ответ, или не полный.
При этом со всех сайтов, с которыми сталкивался, качает и докачивает отлично. Кроме медиа-сервера.
Кто-нибудь сталкивался с этим?
Тут точно ошибка в заголовках, посылаемых сервером. Админы?
P.S. flashget, getright и т.п. не предлагать.
Нашел в чем дело:
The server has fulfilled the partial GET request for the resource. The request MUST have included a Range header field (section 14.35) indicating the desired range, and MAY have included an If-Range header field (section 14.27) to make the request conditional.
Источник: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Лечите свой сервер, уважаемые.
Я должен получать Content-Range вместе с 206 ответом. А его нет.
Из-за этого не могу нормально докачать фильм.
Как вы думаете, из-за этого может быть такое?
Я заметил, что flashget тоже Content-Range не получает, но он отправляет в запросе какой-то "Range: XXXXX", где XXXX - какие-то цифры.
Кстати, d4x тоже не докачивает.
Мои сообщения админам того сервера, с которого пытаюсь качать:
Пытаюсь скачать фильм используя wget. Если во время скачки возникает ошибка, то фильм докачать уже не возможно.
Такое ощущение, что медиа-сервер посылает неправильный ответ, или не полный.
При этом со всех сайтов, с которыми сталкивался, качает и докачивает отлично. Кроме медиа-сервера.
Кто-нибудь сталкивался с этим?
Тут точно ошибка в заголовках, посылаемых сервером. Админы?
P.S. flashget, getright и т.п. не предлагать.
Нашел в чем дело:
The server has fulfilled the partial GET request for the resource. The request MUST have included a Range header field (section 14.35) indicating the desired range, and MAY have included an If-Range header field (section 14.27) to make the request conditional.
Источник: http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
Лечите свой сервер, уважаемые.
Я должен получать Content-Range вместе с 206 ответом. А его нет.
Из-за этого не могу нормально докачать фильм.
Как вы думаете, из-за этого может быть такое?
Я заметил, что flashget тоже Content-Range не получает, но он отправляет в запросе какой-то "Range: XXXXX", где XXXX - какие-то цифры.
Кстати, d4x тоже не докачивает.
-
- Сообщения: 69
Re: wget + докачка. Как?
Вроде бы все свелось к тому, что ихний сервер не умеет возвращать это значение, и они говорят, что нужно запросить файл самостоятельно с нужного байта. Как это сделать?
-
- Бывший модератор
- Сообщения: 1100
- Статус: киборг
- ОС: Cyborg OS 0.0.1.3
Re: wget + докачка. Как?
как при помощи wget не знаю, а вот при помощи curl'a легко. curl -r frombyte-tobyte может поможет.
I'm a tragic hero
In this game called life
My chances go to zero
But I always will survive
In this game called life
My chances go to zero
But I always will survive
-
- Сообщения: 69
Re: wget + докачка. Как?
Все, разобрался. Всем спасибо.
Админы вылечили сервер, и теперь он посылает Content-Range как и нужно.
Админы вылечили сервер, и теперь он посылает Content-Range как и нужно.