Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Скачать файлы с канала Телеграмм

Ответить
Настройки темы
PowerShell - Скачать файлы с канала Телеграмм

Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Добрый день всем!
Есть один канал в Телеграмм, каждый день выкладывают плейлисты, можно скачать по одному, но хотелось бы автоматизировать этот процесс.
Зарегистрировал своего бота, получил токен, id канала тоже есть. Но вот какую команду ввести, чтобы через API телеграмма подключиться к этому каналу и скачать файлы за текущий день, понять не могу. Пересмотрел много примеров ботов, но не могу найти как подключаться именно к каналу.
К примеру есть такой бот:
Код: Выделить весь код
$ChatTimeout = 1
$UpdateId = 0
$token = "bot token"
$Path = "c:\"

##### Получаем сообщение как обычно
$URL = "https://api.telegram.org/bot$token/getUpdates?offset=$UpdateId&timeout=$ChatTimeout"

$Request = Invoke-WebRequest -Uri $URL -Method Get
$content = ConvertFrom-Json $Request.content

# если на выходе 2 и более результатов возьмем только последний
$str = $content.result | select -First 1
$str = ($str).message

##### Если в сообщение передается файл то будут дополнительные поля
# так например мы можем узнать что нам передали картинку
if ( $($str.document).mime_type -eq "image/jpeg" ) {  $isJPG = $true  }

##### Если есть file_name то значит там чтото лежит
# документ на скачивание есть?
if ( $($str.document).file_name -ne $null ) {
        ### разные данные например для логирования
        $DocFileName = ($str.document).file_name
        $DocFileID = ($str.document).file_id
        $DocFileSize = ($str.document).file_size

        # получаем сылку на файл исполняя команду бота /getFile
        $URL = "https://api.telegram.org/bot$token/getFile?file_id=$DocFileID"
        $RequestFile = Invoke-WebRequest -Uri $URL

        ### в $RequestFile если все верно содержится ссылка на скачивание
        foreach ( $JSON in $((ConvertFrom-Json $RequestFile.Content).result) ) {
            $FilePath = $json.file_path
            $URL = "https://api.telegram.org/file/bot$token/$FilePath"
            $FilePath = Split-Path -Leaf $FilePath
            $OutputFile = "$Path\$FilePath"

            # качаем без проверки
            Invoke-WebRequest -Uri $URL -OutFile $OutputFile
        }
}
Но в этом коде тоже нет примера подключения к каналу.
Подскажите, пожалуйста, можно ли скриптом powershell подключиться к определённому каналу телеграмм и скачать все файлы и сообщения за текущий день ?
Возможно ли вообще такое ?

Отправлено: 16:05, 03-09-2019

 

Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Uragan66,
Цитата Uragan66:
Есть один канал в Телеграмм, каждый день выкладывают плейлисты, можно скачать по одному, но хотелось бы автоматизировать этот процесс. »
Поставить в клиенте галку "скачивать мультимедию автоматически"
Это сообщение посчитали полезным следующие участники:

Отправлено: 16:27, 03-09-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Busla, спасибо попробую. Но так то можно сохранять файлы только при постоянно включенном клиенте.
А бот такой не получится написать ?

Отправлено: 16:46, 03-09-2019 | #3


Ветеран


Сообщения: 3806
Благодарности: 824

Профиль | Отправить PM | Цитировать


Цитата Uragan66:
А бот такой не получится написать ? »
получится, но не через бот-API
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:05, 03-09-2019 | #4


Старожил


Сообщения: 216
Благодарности: 15

Профиль | Отправить PM | Цитировать


Busla, да большой разницы то нет через какой API, лишь бы файлы скачивались.
Если можно, дайте, пожалуйста, пример такого бота, смотрел подобный на PHP, но там слишком всё запутано, да и на Windows он не будет работать, только на сервере с Linux.
Попробовал установить "скачивать мультимедию автоматически", в принципе удобно, но в папке телеграмма уже столько мусора, куда только не зайдёшь, мессенджер сразу файлы скачивает...

Отправлено: 23:20, 03-09-2019 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - Скачать файлы с канала Телеграмм

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Как скачать файлы с mega.nz ? MKN Хочу все знать 1 13-07-2016 13:54
[решено] Скачать с сайта определенные файлы автоматически biomirror Хочу все знать 14 01-05-2016 00:05
.NET - Скачать файлы с ftp по маске. Sadhacker Программирование и базы данных 1 20-07-2012 21:23
[решено] Как скачать нужные файлы с нужного сайта? emilj Хочу все знать 21 13-04-2012 20:42
Скачать файлы с пом.DAP ULIY Хочу все знать 6 04-12-2003 21:53




 
Переход