Скрипты для скачивания файлов
Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер
cojoc
Ссылка с редиректом. Посмотрел в закромах, есть консольная спецпрога cclive, но как-то она криво работает.
Я бы взял IP-TV Player, там нормальный планировщик.
wget по PID-у убивать можно, но присутствие консоли мне не нравится.
Поток можно получать скриптом и без сторонних утилит, но вот спецфункции для прерывания выявить пока не удалось.
Ссылка с редиректом. Посмотрел в закромах, есть консольная спецпрога cclive, но как-то она криво работает.
Я бы взял IP-TV Player, там нормальный планировщик.
wget по PID-у убивать можно, но присутствие консоли мне не нравится.
Поток можно получать скриптом и без сторонних утилит, но вот спецфункции для прерывания выявить пока не удалось.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Flasher
Про IP-TV Player знаю (не пробовал его использовать), он основан на vlc, который тоже записывает, правда без планировщика, но у меня не сильное железо и при показе картинки происходят сбои - поэтому они мне не подходят для записи.
Во общем, я пока остановился на планировщике виндовс и во-вторых на кнопке запуска записи потока и закрытия вручную wget.
Спасибо за помощь ещё раз
Про IP-TV Player знаю (не пробовал его использовать), он основан на vlc, который тоже записывает, правда без планировщика, но у меня не сильное железо и при показе картинки происходят сбои - поэтому они мне не подходят для записи.
Во общем, я пока остановился на планировщике виндовс и во-вторых на кнопке запуска записи потока и закрытия вручную wget.
Спасибо за помощь ещё раз
Вообще-то в IP-TV Player есть запись в фоне (помимо прочих).cojoc писал(а): но у меня не сильное железо и при показе картинки происходят сбои - поэтому они мне не подходят для записи.
И какой смысл самому чего-то кликать, если планировщик сам должен выполнять эти функции?cojoc писал(а):Во общем, я пока остановился на планировщике виндовс и во-вторых на кнопке запуска записи потока и закрытия вручную wget.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
cojoc
Сделал с wget. Попробуй.
Могут быть проблемы с битыми или неподдерживаемыми ссылками.
Сделал с wget. Попробуй.
Могут быть проблемы с битыми или неподдерживаемыми ссылками.
Код: Выделить всё
'•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
' Скачивание онлайн-потока с помощью wget
' Параметры: <ссылка> "<путь к получателю и название программы>" <минут на завершение>
' Примеры: http://91.192.168.20:8025 "D:\TV\СТС\Test" 0,2
' http://91.192.168.20:8030 "%PAnimal_Planet" 40
' Автор: Flasher ©
'•••••••••••••••••••••••••••••••••••• Путь к wget ••••••••••••••••••••••••••••••••••••••••••
WGet = "%COMMANDER_PATH%\Utils\wget\wget.exe"
'•••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••••
With WScript.Arguments
If .Count <> 3 Then MsgBox "Должно быть указано три параметра!", 48 : WScript.Quit : End If
URL = .Item(0) : File = .Item(1) : Min = .Item(2) : End With
DIM WSH : Set WSH = CreateObject("WScript.Shell") : If Min = 1 Then M = "у"
Title = Space(16) & "Скачивание онлайн аудио/видео" : If (Min > 1 And Min < 5) Then M = "ы"
WGet = WSH.ExpandEnvironmentStrings(WGet) : File = File & " " & Replace(Now, ":", "`") & ".ts"
Cmd = """" & WGet & """" & URL & " -c -nd -O """ & File & """"
WSH.Run Cmd, 0 : Cmd = """" & Replace(Wget, "\", "\\") & """ " &_
URL & " -c -nd -O """ & Replace(File, "\", "\\") & """"
Set WMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set WMC = WMI.ExecQuery("SELECT Handle FROM Win32_Process WHERE CommandLine='" & Cmd & "'")
If WMC.Count Then
If IsNumeric(Min) Then WSH.Popup "Скачивание завершится через " & Min & " минут" & M &_
"!", 3, Title, 64 Else MsgBox "Третий параметр указан неверно!", 48
WScript.Sleep Min*60000 : On Error Resume Next
For Each P in WMC : P.Terminate : Next : WScript.Sleep 50
With CreateObject("Scripting.FileSystemObject")
Set F = .GetFile(File) : If F.Size = 0 Then
F.Delete : WSH.Popup "Невозможно скачать поток по указанной ссылке!", 2, Title, 48
Else
Msg = MsgBox("Скачивание завершено!" & vbNewLine & vbNewLine & _
"Желаете перейти к скачанному файлу?", 4131, Title)
If Msg = 6 Then WSH.Exec "%COMMANDER_EXE% /O /T /S /L=""" & File & "\:"""
End If : Set F = Nothing
End With
Else MsgBox "Синтаксическая ошибка в указанных параметрах!", 48, Title
End If : Set WSH = Nothing : Set WMI = Nothing : Set WSC = Nothing : WScript.Quit
Последний раз редактировалось Flasher Пн фев 04, 2013 00:19, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
cojoc
Одно другому противоречит. Если файл действительно что-то содержит, то это сообщение не может появится, оно появляется только в случае отсутствия информации, причём перед этим удаляется пустой файл.
Одно другому противоречит. Если файл действительно что-то содержит, то это сообщение не может появится, оно появляется только в случае отсутствия информации, причём перед этим удаляется пустой файл.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Код: Выделить всё
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Scripts\Скачивание онлайн-потока с помощью wget.vbs
http://xxxxx.yy/animalplanet "D:\TV\Test" 1
%COMMANDER_PATH%\icon\tv\Animal Planet.ico
Записать Animal Planet Скрипт
-1"Скачивание завершится через 1 минут"
После минуты, выдало:
"Невозможно скачать поток по указанной ссылке!" но
Сохранилось:
d:\TV\Test 03.02.2013 20`47`32.ts
примерно 20mb
Интересно..
А еслизаменить на
А если
Код: Выделить всё
Set F = .GetFile(File) : If F.Size = 0 ThenКод: Выделить всё
Set F = .GetFile(File)
If F.Size = 0 ThenАвтору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ничего тогда не пойму..
All, если кто с восьмёркой может подтвердить - напишите.
Мне нужен реальный адрес для теста.cojoc писал(а):http://xxxxx.yy/animalplanet
Очень может быть.cojoc писал(а):Сейчас у меня Windows 8 (может это влияет)
All, если кто с восьмёркой может подтвердить - напишите.
Последний раз редактировалось Flasher Вс фев 03, 2013 23:10, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Нельзя.cojoc писал(а):но скрипт был в UTF-8
Не должны. Хотя при UTF-8 вообще скрипт по идее не должен отрабатывать. Может, в восьмёрке изменили.cojoc писал(а):может те процессы влияют (хотя вроде позакрывал)
Добавлено спустя 5 минут:
А что покажет, если под Set F = .GetFile(File) вставить MsgBox F.Size ?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Гм.. Что покажет такой скрипт, если установить курсор на любом из скачанных файлов?
Код: Выделить всё
' Параметр: %V
MsgBox CreateObject("Scripting.FileSystemObject").GetFile(WScript.Arguments(0)).SizeАвтору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.