Как-то на одном из web-ресурсов одному товарищу попалась коллекция редких видеороликов, которые, как показало исследование страницы сайта, были загружены в конкретную директорию на том самом сайте и имели однотипные названия файлов. И этот товарищ захотел скачать эти видеоролики на свой компьютер, чтобы ознакомиться с их содержимым в более спокойной обстановке и без интернета (в самолете во время длительного перелета).

Как скачивать файлы с сайта с помощью БАТника

Таким образом сформировалась задача - скачать эти видеоролики, причем, желательно автоматизированно, так как их количество было более 400 шт!




 

Вариантов скачать данные файлы было несколько:

1. С помощью одного их плагинов для браузера, позволяющих сохранять видео с web-страницы. Данный вариант не подходил, так как абсолютно не имел автоматизации, и каждый видео-файл нужно было бы запускать и скачивать отдельно. НЕ ПОДХОДИТ!

2. Открывать каждый файл по прямой ссылке (типа такой: http: // site.ru/some-folder/video154.mp4) и с помощью нажатия клавиш CTRL + S сохранять файл в нужную папку на компьютере. Этот способ сохранения также без автоматизации. НЕ ПОДХОДИТ!

3. Использовать программу Offline Explorer Enterprise или ее аналог. Подобные программы могут скачивать сайты почти со всем их содержимым, можно настроить скачивание только конкретных типов файлов, запустить процесс и ждать окончания, занимаясь другими делами...

Но данные программы практически все платные, их нужно найти, скачать, купить(?!), установить, настроить и только после этого запустить процесс и наслаждаться результатом. НЕ ОЧЕНЬ ПОДХОДИТ!

4. Использовать простую программу WGET и БАТник (BAT-файл). Программа WGET бесплатная, БАТник написать - 5 минут, и готово! Запустить БАТник и ждать окончания скачивания всех файлов. ПОДХОДИТ!

 

Содержимое BAT-файла:

 

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video1.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video2.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video3.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video4.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video5.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video6.mp4" -P D:\2

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video7.mp4" -P D:\2

...

...

wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video450.mp4" -P D:\2



 

Синтаксис команды очень простой:

wget.exe - использовать программу WGET;

-c - ключ для возобновления закачки с места остановки, если загрузка файла случайно прервется;

--no-check-certificate - игнорировать сертификаты сайтов (для HTTPS). Если не добавить этот ключ, а на сайте стоит жесткая переадресация всех HTTP-запросов на HTTPS (например, 301-ый редирект), то можно получить ошибку:

 

ERROR: cannot verify site.ru's certificate, issued by `/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3':
  Unable to locally verify the issuer's authority.

To connect to vs1.coursehunters.net insecurely, use `--no-check-certificate'.
Unable to establish SSL connection.

 

И скачать файлы не получится. Потому что, ХЗ какой сертификат используется :)))

После добавления ключа будет отображаться предупреждение, просто игнорируем его:

 

WARNING: cannot verify vs1.coursehunters.net's certificate, issued by `/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3':
  Unable to locally verify the issuer's authority.

 

"http: // site.ru/some-folder/video1.mp4" - адрес конкретного файла, который нужно скачать. Внимание: пробелы перед // и после не нужны!

-P D:\2 - путь для сохранения скачиваемых файлов (если не хотим, чтобы файлы сохранялись в папку с программой WGET и БАТником).

 

Соответственно, прописать в BAT-файле столько строк, сколько файлов нужно скачать. Сгенерировать нужное количество однотипных строк можно с помощью регулярных выражений или программы MS Excel (как вариант).




 

Итак, нужно сделать следующее:

  • Создать БАТник;
  • Скачать программу WGET с этого сайта либо с иного web-ресурса;
  • Поместить программу WGET в одну папку с БАТником;
  • Запустить БАТник и ждать окончания процесса скачивания файлов;

Как скачивать файлы с сайта с помощью БАТника

  • Если скачивание в какой-то момент остановится, закрыть консоль и запустить заново, предварительно удалив строки, в которых прописаны уже скачанные файлы. Строку с последним недокаченным файлом не удалять!




 

Внимание! Для упрощения отладки БАТника не вставляйте в него сразу много строк, а напишите для начала 1-2 и после них добавьте команду на паузу, чтобы успеть прочитать сообщение об ошибке, если она возникнет.

Синтаксис команды-паузы:

 

TIMEOUT /T 10 /NOBREAK

 

10 = 10 секунд.

 

Содержимое модифицированного BAT-файла:

(более оптимальное - чтобы не писать много строк в БАТнике, а только одну)

 

FOR /L %%I IN (104,1,428) DO wget.exe -c --no-check-certificate "http: // site.ru/some-folder/video%%I.mp4" -P D:\2 && TIMEOUT /T 20 /NOBREAK

 

В этом случае скачивание файлов выполняется в цикле.

FOR - оператор цикла;

/L  - ключ, задающий обработку набора из последовательности чисел с заданными началом, концом и шагом приращения;

%%I - переменная (если команду просто запускать в CMD или в POWERSHELL, то указывать один знак процента, в БАТнике нужно два);

IN (104,1,428) - диапазон значений для переменной I и шаг изменений: (первое значение, шаг, последнее значение);

http: // site.ru/some-folder/video%%I.mp4  - ссылка на скачивание файлов, содержащая в себе переменную %%I.

&& - оператор "И", позволяющий выполнить в цикле вторую команду, в нашем случае это пауза на 20 секунд. Знак & можно написать один раз.




Вложения:
ФайлОписаниеРазмер файла:
Скачать этот файл (wget.zip)wget.zip 385 kB

Комментарии (4)

This comment was minimized by the moderator on the site

Да, хорошо так можно время свое сэкономить!
Спасибо

This comment was minimized by the moderator on the site

Так можно и эту утилиту ей же скачать

This comment was minimized by the moderator on the site

А как сделать, чтобы скачать прайс с сайта где нужна авторизация, и когда я авторизован но файл не закачивается а просит авторизацию

This comment was minimized by the moderator on the site

А как сделать, чтобы скачать прайс с сайта где нужна авторизация, и когда я авторизован но файл не закачивается а просит авторизацию

Если файл один, то вам проще скачать его вручную. Батником обычно скачивают однотипные файлы, если их много - чтобы не тратить время.

С авторизацией тоже можно скачивать, нужно изучить, как работает тот сайт: какие запросы использует для авторизации - GET или POST, и как потом скачивает - используется токен или куки или ....

Здесь не опубликовано еще ни одного комментария

Оставьте свой комментарий

  1. Опубликовать комментарий как Гость.
0 Значки
Вложения (0 / 3)
Поделитесь своим местоположением

      Как отформатировать флэшку в NTFS?
      Как отформатировать флэшку в NTFS?

      Считается, что файловая система NTFS надежнее, чем FAT32 и FAT16. Но не смотря на это все флэшки по умолчанию имеют файловую систему FAT16 (Windows отображает как просто FAT). Большинство пользователей это никак не напрягает и многие из них даже не задумываются об изменении файловой системы своей любимой флэшки. Но в последнее время из-за развития технологии и бесповоротного удешевления...




      Проверка сроков действия НБД Jeppesen в EFB
      Проверка сроков действия НБД Jeppesen в EFB

      Не смотря на информацию в статье "Срок действия баз данных Jeppesen для EFB" у некоторых товарищей периодически возникают вопросы относительно актуальности баз данных Jeppesen в программах EFB. С одной стороны, их вопросы вполне логичны, так как интерфейс программы Jeppesen FD PRO все еще не идеален, и некоторые моменты весьма не однозначны для пользователей. Например, если открыть в приложении Jeppesen FD PRO страницу Updates, то можно увидеть, что...




      Dropbox и сто iPad'ов
      Dropbox и сто iPad'ов

      Исходные данные: Сто планшетов Apple iPad; Множество документов (~ 60 шт) разного размера (от 1 до 200 Мб), периодически обновляемых, каждый документ по своему регламенту. Необходимо обеспечить: Наличие всех этих документов в актуализированном состоянии в любой момент времени непосредственно на всех этих iPad'ах; Элементарную (хотя бы) защиту этих документов.




      Где прячутся вирусы
      Где прячутся вирусы

      При заражении компьютера вирусы поступают таким образом, чтобы при загрузке операционной системы они тоже загружались, либо загружалась их самая основная необходимая часть. Для этого они обычно вносят изменения в реестр Windows. В зависимости от продвинутости создателя вируса это может быть реализовано по-разному. Рассмотрим самые распространенные случаи, где прячутся вирусы:  




      Признаки принадлежности аэродрома
      Признаки принадлежности аэродрома

      В некоторых авиационных справочниках (онлайн или установленных отдельных приложений) по аэродромам есть такой параметр - "Признак принадлежности аэродрома" ("aerodrom usage attribute"), который и определяет эту принадлежность.Помимо общеизвестных признаков принадлежности аэродрома - военные, гражданские и совместного базирования, существует еще несколько. Они малораспространены, но иногда...




      Авиакомпания Monarch Airlines выбрала Flightman EFB
      Авиакомпания Monarch Airlines выбрала Flightman EFB

      Авиакомпания Monarch Airlines (Великобритания) выбрала программу производства фирмы Flightman для использования в своих Electronic Flight Bag (EFB) , чтобы обеспечить летные экипажи аэронавигационной информацией в рамках повышения эффективности работы и снижения затрат. В июле 2011 года авиакомпания Monarch Airlines подтвердила, что она будет устанавливать комплекс программного обеспечения от Flightman в свои EFB для всего их парка воздушных судов. Авиакомпания Monarch Airlines изначально использовала в...




      Как обновить навигационные БД программ JeppView 3 и Flight Deck 3
      Как обновить навигационные БД программ JeppView 3 и Flight Deck 3

      Есть две замечательные программы для пилотов/штурманов от фирмы Jeppesen - JeppView 3 и FlightDeck 3. Вот только Jeppesen несколько лет назад перестал их поддерживать. Вместо программы JeppView 3 сейчас можно приобрести и установить программу JeppView for Windows (в принципе, она почти как старая версия, ничуть не хуже, даже, наоборот, функционал стал более расширенным). А вместо старой доброй FlightDeck 3...



Яндекс.Метрика