Как-то на одном из web-ресурсов одному товарищу попалась коллекция редких видеороликов, которые, как показало исследование страницы сайта, были загружены в конкретную директорию на том самом сайте и имели однотипные названия файлов. И этот товарищ захотел скачать эти видеоролики на свой компьютер, чтобы ознакомиться с их содержимым в более спокойной обстановке и без интернета (в самолете во время длительного перелета).
Таким образом сформировалась задача - скачать эти видеоролики, причем, желательно автоматизированно, так как их количество было более 400 шт!
1. С помощью одного их плагинов для браузера, позволяющих сохранять видео с web-страницы. Данный вариант не подходил, так как абсолютно не имел автоматизации, и каждый видео-файл нужно было бы запускать и скачивать отдельно. НЕ ПОДХОДИТ!
2. Открывать каждый файл по прямой ссылке (типа такой: http: // site.ru/some-folder/video154.mp4) и с помощью нажатия клавиш CTRL + S сохранять файл в нужную папку на компьютере. Этот способ сохранения также без автоматизации. НЕ ПОДХОДИТ!
3. Использовать программу Offline Explorer Enterprise или ее аналог. Подобные программы могут скачивать сайты почти со всем их содержимым, можно настроить скачивание только конкретных типов файлов, запустить процесс и ждать окончания, занимаясь другими делами...
Но данные программы практически все платные, их нужно найти, скачать, купить(?!), установить, настроить и только после этого запустить процесс и наслаждаться результатом. НЕ ОЧЕНЬ ПОДХОДИТ!
4. Использовать простую программу WGET и БАТник (BAT-файл). Программа WGET бесплатная, БАТник написать - 5 минут, и готово! Запустить БАТник и ждать окончания скачивания всех файлов. ПОДХОДИТ!
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 (как вариант).
Итак, нужно сделать следующее:
Внимание! Для упрощения отладки БАТника не вставляйте в него сразу много строк, а напишите для начала 1-2 и после них добавьте команду на паузу, чтобы успеть прочитать сообщение об ошибке, если она возникнет.
Синтаксис команды-паузы:
TIMEOUT /T 10 /NOBREAK
10 = 10 секунд.
(более оптимальное - чтобы не писать много строк в БАТнике, а только одну)
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 секунд. Знак & можно написать один раз.
Многие пользователи компьютеров с операционной системой Windows (версии 7 и 8) недавно обнаружили, что каким-то образом сам по себе в трее появился новый значок - «Получить Windows 10». Владельцы "древних" операционок типа Windows XP и 2000 такого "подарка" не получили и, скорее всего, вряд ли расстроились из-за этого :) .
Если на компьютере установлена прикладная навигационная программа Jeppesen FliteStar/FliteMap совместно с программой Jeppesen JeppView, то в программе FliteStar/FliteMap становится активной опция в меню "View - Airport List" и в ней становится также воможным просматривать схемы аэродромов. В процессе эксплуатации программы может возникнуть ситуация, когда список аэродромов и их схем перестанет отображаться - не просто спрятана панель...
Во-первых, зачем это может понадобиться? Представьте ситуацию: корпоративные сайт со специфическими задачами, количество пользователей - до нескольких сотен человек. Регистрацию этих пользователей выполняет администратор сайта, самостоятельная регистрация на сайте специально отключена, чтобы отсечь чужих. Для того, чтобы администратору не нужно было создавать множество почтовых ящиков, на...
По умолчанию браузер Safari после скачивания архива сразу его распаковывает, причем сам исходный архив при этом удаляет! С одной стороны это хорошо - браузер после скачивания проверяет архив на целостность: разархивация будет не удачной, если архив битый. Но, с другой стороны, это далеко не всегда нужно - иметь извлеченные файлы вместо самого архива. Safari считает себя на столько продвинутым браузером, что...
Бодхгайя — это место в Индии, где Будда достиг Просветления. Неподалеку от дерева бодхи находится священный пруд, где Будда, по достижении Просветления, пережидал сезон дождей и где его укрывал от дождей сам Король Нагов. И сейчас, с левой стороны от ступы, находится пруд. А в пруду живут сомы. И их очень много т.к ловить их и убивать не положено. Чем они и пользуются, наглея с каждым днем все больше и...
Для того, чтобы пользователи приложения не тыкали своими шаловливыми ручками куда попало не могли вводить заведомо не корректный текст, можно реализовать ряд ограничений для них. На сайтах обычно это реализуется с помощью JS-скриптов, которые, теоретически, могут быть оключены пользователем на глобальном уровне, и все ограничения, реализованные с помощью JS перестанут действовать. В...
Это нужно далеко не всем и довольно редко - менять мак-адрес (mac-address) сетевой карты компьютера. Но, тем не менее, такая необходимость может неожиданно возникнуть. Причины для изменения Mac-адреса: 1. Если интернет-провайдер использует привязку по Mac-адресу, а вы по некой причине вынуждены сменить домашний компьютер и не лишиться доступа к сети. В этом случае нужно для сетевой карты нового компьютера прописать Mac-адрес...