pira/instagram

基于MadelineProto的Telegram Instagram-DL机器人

1.3.0 2024-08-04 05:20 UTC

This package is not auto-updated.

Last update: 2024-09-29 09:27:25 UTC


README

欢迎使用Instagram-DL Telegram机器人项目!此机器人允许您通过Telegram发送链接来下载Instagram视频。它使用MadelineProto构建。

功能

  • 通过将链接发送到机器人来下载Instagram视频。
  • 自动处理有效URL检查。
  • 在下载过程中提供进度更新。

安装

要求

  • PHP 8.2或更高版本
  • Composer(可选,但推荐)

设置

方法1:使用Git和Composer

  1. 克隆仓库

    git clone https://github.com/code3-dev/Instagram-DL.git
    cd Instagram-DL
  2. 安装依赖项

    composer install
  3. 运行机器人

    php bot.php

方法2:使用Composer Project Creator

  1. 创建项目

    composer create-project pira/instagram mybot
  2. 导航到项目目录

    cd mybot
  3. 运行机器人

    php bot.php

方法3:仅运行bot.php

  1. 下载bot.php文件

    wget https://raw.githubusercontent.com/code3-dev/Instagram-DL/master/bot.php
  2. 运行机器人

    php bot.php

使用方法

机器人启动后,您可以在Telegram上与其交互。以下是一些基本命令

  • 启动机器人

    /start
    
  • 发送Instagram链接:只需将Instagram视频链接粘贴到聊天中,机器人就会下载并发送视频给您。

项目结构

  • src/YTDL.php:此文件包含处理来自Instagram的下载请求的逻辑。
  • bot.php:运行Telegram机器人的主要入口点。

代码概览

事件处理器

机器人使用事件处理器来处理命令和传入的消息。以下是一些关键组件

  • cmdStart:处理/start命令并发送欢迎消息。
  • cmdProcessUrl:处理用户发送的Instagram URL,验证它,并启动下载过程。
  • cmdUpload:管理文件上传过程,提供进度更新。

主函数

main函数初始化机器人设置并启动机器人循环。

public static function main()
{
    $settings = new Settings;
    $settings->getConnection()->setMaxMediaSocketCount(1000);
    $settings->getPeer()->setFullFetch(false)->setCacheAllPeersOnStartup(false);

    self::startAndLoop('bot.madeline', $settings);
}

许可

本项目采用MIT许可。有关详细信息,请参阅LICENSE文件。

作者

致谢

PHP YTDL库集成

此机器人利用PHP YTDL库中的YTDL类来处理视频下载。以下是YTDL类的概述

YTDL类

YTDL类处理配置和向视频下载API发送请求。它允许您设置下载视频或音频的参数,例如视频质量、编解码器、音频格式和文件名模式。该类提供方法来启用或禁用特定功能,如仅音频下载、TikTok视频的全音频和元数据选项。

来源