Как-то на одном из 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

Комментарии   

#1 Lida Margunova 22.03.2019 22:52
Да, хорошо так можно время свое сэкономить!
Спасибо

Добавить комментарий

     

Защитный код
Обновить


      Как добраться из Шонефельда в Тегель
      Как добраться из Шонефельда в Тегель

      Путешествуя по Европе, довольно часто приходится планировать свой маршрут через Германию, например, получив немецкий шенген, едешь в Швейцарию или в Прагу. Не всегда получается первоочередно поехать в ту страну, визу которой получил. Если "точка входа" в шенген - Германия, то чаще всего транзитным пунктом становится Берлин. Из России в Берлин можно прилететь в аэропорт Шонефельд (Schönefeld), а вот дальше...




      В скайпе вирус
      В скайпе вирус

      В мае 2011 года компания Microsoft купила Skype. Многие пользователи этой программы не особо были рады этому событию, некоторые из них громко сказали "Фу!" Но, тем не менее, я лично не знаю ни одного человека, который перестал пользоваться программой Skype после смены владельца.




      Шезлонг Ларри или Мечты сбываются
      Шезлонг Ларри или Мечты сбываются

      В 1982 году Ларри Уолтерс, пенсионер из Лос-Анджелеса решил осуществить давнюю мечту - полететь, но не на самолете. Он изобрел собственный способ путешествовать по воздуху. Уолтерс привязал к удобному креслу сорок пять метеорологических шаров, наполненных гелием, каждый из которых имел метр в диаметре. Он уселся в кресло, взяв запас бутербродов, пиво и дробовик. По сигналу, его друзья отвязали веревку,...




      Проблема идиотских NOTAM
      Проблема идиотских NOTAM

      Это всё совершенно нелепо. Мы передаём самую важную полётную информацию, используя систему, изобретенную в 1920 году в формате, который не менялся с 1924 года. При этом мы зарываем в кучу нечитабельного, бесполезного информационного мусора важную информацию, не знание которой может стать для пилотов причиной потери работы, авиакомпании – своих самолетов или жизней пассажиров. Да, Австралийская CASA, это вы! Да, греческие CAA,...




      Показывать скрытые файлы и папки
      Показывать скрытые файлы и папки

      Многие современные гадкие вирусы отключают и блокируют включение отображения скрытых папок и файлов в проводнике Windows. В этом случае сколько хочешь раз ставь галочку "Показывать скрытые файлы и папки", а толку не будет. Как в таких случаях задействовать в проводнике Windows опцию «Показывать скрытые файлы и папки»?




      Как быстро сменить IP-адрес?
      Как быстро сменить IP-адрес?

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




      14 аэропортов России перестали передавать METAR и TAF
      14 аэропортов России перестали передавать METAR и TAF

      С 12 UTC 18 мая 2017 по решению Росгидромета из международного обмена исключили метеоданные по 14 аэродромам РФ (Письмо от Росгидромета в Росавиацию №140-02969/17И от 27.04.17.). Это значит, что информация METAR и TAF по этим аэродромам с этого момента не будет поступать в международные метеорологические банки данных и, соответственно, будет отсутствовать в базах данных Lufthansa Systems...



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