Скачивание WMV с URL в Python 2.6 - PullRequest
       58

Скачивание WMV с URL в Python 2.6

0 голосов
/ 03 февраля 2011

У меня есть файл wmv по определенному URL, который я хочу получить и сохранить как файл с использованием Python. Мой скрипт использует urllib2 для аутентификации и чтения байтов и сохранения их локально в виде кусков. Однако, как только я открываю файл, ни один видеоплеер не распознает его. Когда я вручную загружаю wmv из браузера, файл воспроизводится нормально, но, как ни странно, оказывается примерно на 500 КБ меньше, чем файл, который я получаю при использовании Python. В чем дело? Есть ли информация заголовка, которую мне нужно как-то исключить?

Ответы [ 3 ]

0 голосов
/ 03 февраля 2011

Насколько я понимаю, urllib работает на уровне HTTP и должен правильно удалять заголовки в последующих чанках. Я посмотрел на данные, возвращаемые read (), и это все байты.

0 голосов
/ 04 февраля 2011

Я писал свой файл в режиме 'w' на компьютере с Windows. Запись двоичных данных должна выполняться в режиме 'wb', иначе EOL будут неправильными.

0 голосов
/ 03 февраля 2011

Какое Transfer-Encoding отправляет сервер обратно? Могу поспорить, что он отправляет обратно Transfer-Encoding: chunked, который заканчивается вашими данными.

http://en.wikipedia.org/wiki/Chunked_transfer_encoding

...