AI Mirror leech telegram bot

  • Автор GOLO
  • Дата публикации
  • Время чтения статьи 15 минут чтения
Официальный репозиторий: Telegram-бот, который может загружать торренты, мега, гугл-диск, телеграмм-документ, любой файл/папку из облака, поддерживаемого rclone, и прямые ссылки + все сайты, поддерживаемые yt-dlp, а затем загружать их на гугл-диск, облако телеграммы или в один из облака, поддерживаемые rclone.

Это Telegram-бот, написанный на Python для зеркалирования файлов в Интернете на ваш Google Диск, Telegram или в любое облако с поддержкой rclone. На основе


Функции​


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


qBittorrent​


  • Поддержка Qbittorrent
  • Выберите файлы из Torrent до и во время загрузки
  • Seed торренты с определенным соотношением и временем
  • Изменить глобальные параметры во время работы бота из настроек бота

Ария2с​


  • Выберите файлы из Torrent до и во время загрузки
  • Seed торренты с определенным соотношением и временем
  • Поддержка сети
  • Аутентификация по прямой ссылке для конкретной ссылки при использовании бота (будет работать, даже если только имя пользователя или пароль)
  • Улучшить aria.sh
  • Исправьте все функции прослушивателя загрузки и статус
  • Изменить глобальные параметры во время работы бота из настроек бота

Загрузка/выгрузка ТГ​


  • Пиявка поддержки
  • Разделение
  • Миниатюра для каждого пользователя
  • Префикс имени файла Leech для каждого пользователя. Украден у
  • Установить загрузку как документ или как медиа для каждого пользователя
  • Загрузка файла 4 ГБ с премиум-аккаунтом
  • Загрузить все файлы в определенную супергруппу/канал.
  • Leech Split size и настройки одинакового размера split для каждого пользователя
  • Возможность извлечения разделенных частей файла в медиагруппе. Настройка для каждого пользователя
  • Скачать с премиум-аккаунта, если он доступен
  • Скачать сообщения с ограниченным доступом (документ или ссылку) по tg private/public/super links

Google​


  • Остановить дубликаты для всех задач
  • Скачать с Google Диска
  • Подсчет файлов/папок Google Диска
  • Поиск в нескольких папках Диска/TeamDrive
  • Рекурсивный поиск (только с rootили идентификатор TeamDrive, идентификаторы папок будут перечислены нерекурсивным методом). На основе searchX-bot.
  • Используйте Token.pickle, если файл не найден с учетной записью службы, для всех функций Gdrive.
  • Случайная учетная запись службы для каждой задачи

Положение дел​


  • Статус клонирования
  • Извлечь статус
  • Статус архива
  • Исходный статус
  • Страницы состояния для неограниченного количества задач
  • Возможность отменить загрузку/клонирование/архивирование/извлечение/разделение
  • Отменить все кнопки для выбора статуса конкретных задач для отмены
  • Исправить проблемы с флудом
  • Исправить общую скорость загрузки и скачивания

Yt-dlp​


  • Переключитесь с youtube-dl на yt-dlp и устраните все конфликты
  • Кнопки качества YT-DLP
  • Возможность использовать конкретную опцию yt-dlp для каждой задачи
  • Пользовательские параметры yt-dlp по умолчанию для каждого пользователя
  • Исправить процесс загрузки
  • Вставьте оригинальную миниатюру и добавьте ее для пиявки
  • Все поддерживаемые аудио форматы

База данных​


  • Поддержка базы данных Mongo
  • Сохранить настройки бота
  • Хранить пользовательские настройки, включая эскизы и конфигурацию rclone, в базе данных.
  • Хранить личные файлы
  • Хранить RSS-данные
  • Хранить сообщения о незавершенных задачах

Поиск торрентов​


  • Поддержка торрент-поиска
  • Поиск на торрентах с Torrent Search API
  • Поиск на торрентах с переменными плагинами с помощью поисковой системы qBittorrent

Архивы​


  • Zip вместо tar
  • Использование инструмента 7-zip для извлечения всех поддерживаемых типов
  • Распаковать rar, zip и 7z внутри папки или разбить с паролем или без него
  • Заархивируйте файл/папку с паролем или без него

RSS​


  • Новостная лента. На основе этого репозитория
  • Добавлены фильтры
  • Редактируйте любую ленту во время работы: приостанавливайте, возобновляйте, редактируйте команду и редактируйте фильтры.
  • Rss для каждого пользователя с тегом
  • Настройки Sudo для управления лентами пользователей
  • Все функции улучшены с помощью кнопок одной команды.

Рклон​


  • Загрузка и загрузка с использованием rclone со случайными учетными записями служб и без них
  • Возможность выбора конфига, пульта и пути из списка кнопками
  • Возможность устанавливать флаги rclone для каждой задачи или глобально из конфига
  • Rclone.conf для каждого пользователя
  • Клонировать на стороне сервера
  • Rclone служит для объединения пультов, чтобы использовать его в качестве индекса со всех пультов.

Общий​


  • Поддержка образов Docker для Linux amd64, arm64/v8, arm/v7
  • Переключиться с синхронизации на асинхронность
  • Переключитесь с python-telegram-bot на пирограмму
  • Редактируйте переменные и перезаписывайте личные файлы во время работы бота.
  • Обновите бота при запуске и с помощью команды перезапуска, используя UPSTREAM_REPO
  • Улучшить Телеграф. На основе loaderX-bot
  • Mirror/Leech/Watch/Clone/Count/Del по ответу
  • Зеркальное/личное/клонирование нескольких ссылок/файлов одной командой
  • Пользовательское имя для всех ссылок, кроме торрентов. Для файлов вы должны добавить расширение, кроме ссылок yt-dlp
  • Расширения Фильтр файлов для загрузки/клонирования
  • Кнопка просмотра ссылки. Дополнительная кнопка для открытия индексной ссылки в браузере вместо прямой загрузки файла
  • Система очереди для всех задач
  • Возможность заархивировать / разархивировать несколько ссылок в одном каталоге. В основном полезно при распаковке частей файла tg.
  • Массовая загрузка из текстового файла телеграммы или текстового сообщения, содержащего ссылки, разделенные новой строкой
  • Присоединяйтесь к разделенным файлам, которые были разделены ранее, с помощью split linux pkg
  • Почти все функции репозитория были улучшены, и многие другие детали не могут быть упомянуты все из них.
  • Исправлено множество ошибок

Из базы и других репозиториев​


  • Отразить прямые ссылки для скачивания, файлы Torrent, Mega.nz и Telegram на Google Диск
  • Скопируйте файлы с чужого Диска на свой Диск
  • Ход загрузки/выгрузки, скорость и расчетное время прибытия
  • Отразить все ссылки, поддерживаемые youtube-dl
  • Поддержка докера
  • Загрузка на общий диск
  • Поддержка индексных ссылок
  • Поддержка сервисного аккаунта
  • Удалить файлы с Диска
  • Поддержка нескольких трекеров
  • Оболочка и исполнитель
  • Добавить пользователей sudo
  • Извлечь защищенные паролем файлы
  • Извлеките эти типы файлов
    ZIP, RAR, TAR, 7z, ISO, WIM, CAB, GZIP, BZIP2, APM, ARJ, CHM, CPIO, CramFS, DEB, DMG, FAT, HFS, LZH, LZMA, LZMA2, MBR, MSI, MSLZ, NSIS, NTFS, RPM, SquashFS, UDF, VHD, XAR, Z, TAR.XZ
  • Поддерживаются прямые ссылки:
    mediafire, letsupload.io, hxfile.co, antfiles, fembed.com, fembed.net, femax20.com, layarkacaxxi.icu, fcdn.stream, sbplay.org, naniplay.com, naniplay.nanime.in, naniplay.nanime. biz, sbembed.com, streamtape.com, streamsb.net, feurl.com, upload.ee, pixeldrain.com, racaty.net, 1fichier.com, 1drv.ms (работает только для файла, а не для папки или бизнес-аккаунта), uptobox .com и solidfiles.com, linkbox.to, shrdsk.me (sharedisk.io), akmfiles.com, wetransfer.com, mdisk.me (с ytdl), terabox.com (необходимо добавить файлы cookie txt с именем) и почти все сайты на основе анофайлов

Как развернуть?​


Предпосылки​






1. Требования к установке​


  • Клонируйте это репо:

git clone mirrorbot/ && cd mirrorbot

  • Для дистрибутивов на базе Debian

sudo apt install python3 python3-pip

Установите Docker, следуя


  • Для Arch и его производных:

sudo pacman -S docker python

  • Установите зависимости для запуска сценариев установки:

pip3 install -r requirements-cli.txt



2. Настройка файла конфигурации​


cp config_sample.env config.env

  • Удалите первую строку, говорящую:

_____REMOVE_THIS_LINE_____=True

Заполните остальные поля. Значение каждого поля обсуждается ниже. ПРИМЕЧАНИЕ . Все значения должны быть заключены в кавычки, даже если это Int, Boolили List.


1. Обязательные поля


  • BOT_TOKEN: Токен Telegram Bot, который вы получили от . Str
  • OWNER_ID: идентификатор пользователя Telegram (не имя пользователя) владельца бота. Int
  • TELEGRAM_API: Это необходимо для аутентификации вашей учетной записи Telegram для загрузки файлов Telegram. Вы можете получить это от . Int
  • TELEGRAM_HASH: Это необходимо для аутентификации вашей учетной записи Telegram для загрузки файлов Telegram. Вы можете получить это от . Str

2. Дополнительные поля


  • USER_SESSION_STRING: Чтобы скачать/выгрузить из вашей учетной записи Telegram и отправить rss. Чтобы сгенерировать строку сеанса, используйте эту команду python3 generate_string_session.pyпосле установки папки репо наверняка. Str. ПРИМЕЧАНИЕ . Вы не можете использовать бота с личными сообщениями. Используйте его с супергруппой.
  • DATABASE_URL: URL-адрес вашей базы данных Mongo (строка подключения). Следуйте этому , чтобы создать базу данных. Данные будут сохранены в базе данных: пользователи auth и sudo, настройки пользователей, включая миниатюры для каждого пользователя, данные rss и незавершенные задачи. ПРИМЕЧАНИЕ . Вы всегда можете отредактировать все настройки, сохраненные в базе данных, с официального сайта -> (Просмотр коллекций). Str
  • DOWNLOAD_DIR: путь к локальной папке, в которую должны быть загружены загрузки. Str
  • CMD_SUFFIX: порядковый номер команды. Этот номер будет добавлен в конце всех команд. Str| Int
  • AUTHORIZED_CHATS: Заполните user_id и chat_id групп/пользователей, которых вы хотите авторизовать. Разделите их пробелом. Int
  • SUDO_USERS: Заполните user_id пользователей, которым вы хотите дать разрешение sudo. Разделите их пробелом. Int
  • DEFAULT_UPLOAD: Ли rcзагрузить в RCLONE_PATHили gdзагрузить в GDRIVE_ID. По умолчанию gd. Подробнее читайте . Str
  • STATUS_UPDATE_INTERVAL: время в секундах, по истечении которого сообщение о ходе/статусе будет обновлено. рекомендуемые 10секунд минимум. Int
  • AUTO_DELETE_MESSAGE_DURATION: Интервал времени (в секундах), по истечении которого бот удаляет свое сообщение и командное сообщение, которое, как ожидается, будет просмотрено мгновенно. ПРИМЕЧАНИЕ . Установите на -1чтобы отключить автоматическое удаление сообщений. Int
  • STATUS_LIMIT: Ограничить нет. задач, показанных в сообщении о состоянии с помощью кнопок. По умолчанию 10. ПРИМЕЧАНИЕ . Рекомендуемый предел 4задания. Int
  • EXTENSION_FILTER: расширения файлов, которые нельзя загружать/клонировать. Разделите их пробелом. Str
  • INCOMPLETE_TASK_NOTIFIER: получать сообщения о незавершенных задачах после перезапуска. Требуется база данных и супергруппа. По умолчанию False. Bool
  • UPTOBOX_TOKEN: токен Uptobox для зеркалирования ссылок uptobox. Получите его из . str
  • YT_DLP_OPTIONS: параметры yt-dlp по умолчанию. Проверьте все возможные параметры или используйте этот для преобразования аргументов cli в параметры API. Формат: ключ:значение|ключ:значение|ключ:значение. Добавлять ^перед целым числом или числом с плавающей запятой некоторые числа должны быть числовыми, а некоторые — строковыми. str
    • Пример: «format:bv*+mergeall[vcodec=none]|nocheckcertificate:True»
  • USE_SERVICE_ACCOUNTS: Использовать учетные записи служб или нет, с google-api-python-client. Чтобы это работало, см. ниже. По умолчанию False. Bool

Инструменты GDrive​


  • GDRIVE_ID: это идентификатор папки/группового диска Google Диска ИЛИ rootна который вы хотите загрузить все зеркала с помощью google-api-python-client. Str
  • IS_TEAM_DRIVE: Набор Trueпри загрузке в TeamDrive с помощью google-api-python-client. По умолчанию False. Bool
  • INDEX_URL: см. . Str
  • STOP_DUPLICATE: бот будет проверять имя файла/папки на Диске при загрузке на GDRIVE_ID. Если он присутствует на Диске, загрузка или клонирование будет остановлено. ( ПРИМЕЧАНИЕ : элемент будет проверяться по имени, а не по хешу, поэтому эта функция еще не идеальна). По умолчанию False. Bool

Рклон​


  • RCLONE_PATH: Путь rclone по умолчанию, на который вы хотите загрузить все файлы/папки с помощью rclone. Str
  • RCLONE_FLAGS: ключ:значение|ключ|ключ|ключ:значение . Проверьте здесь все . Str
  • RCLONE_SERVE_URL: Действительный URL-адрес, по которому развернут бот для использования rclone serve. Формат URL должен быть , где myipэто IP/домен (общедоступный) вашего бота или если вы выбрали порт, отличный от 80так что пишите в таком формате http://myip:port ( httpи не https). Str
  • RCLONE_SERVE_PORT: это порт RCLONE_SERVE_URL . По умолчанию 8080. Int
  • RCLONE_SERVE_USER: Имя пользователя для аутентификации rclone serve. Str
  • RCLONE_SERVE_PASS: пароль для аутентификации службы rclone. Str

Обновлять​


  • UPSTREAM_REPO: Ссылка на ваш репозиторий github, если ваш репозиторий является частным, добавьте :{githubtoken}@github.com/{username}/{reponame}формат. Получить токен из . Таким образом, вы можете обновлять своего бота из заполненного репозитория при каждом перезапуске. Str.
    • ПРИМЕЧАНИЕ . Любые изменения в докере или требованиях, которые вам необходимо развернуть/собрать заново с обновленным репо, чтобы они вступили в силу. НЕ удаляйте файл .gitignore. Для получения дополнительной информации прочитайте .
  • UPSTREAM_BRANCH: вышестоящая ветвь для обновления. По умолчанию master. Str

Пиявка​


  • LEECH_SPLIT_SIZE: Размер разделения в байтах. По умолчанию 2GB. По умолчанию 4GBесли ваш аккаунт премиум. Int
  • AS_DOCUMENT: Тип загрузки файла Telegram по умолчанию. По умолчанию Falseзначит как медиа. Bool
  • EQUAL_SPLITS: Разделять файлы больше, чем LEECH_SPLIT_SIZE , на части одинакового размера (не работает с zip cmd). По умолчанию False. Bool
  • MEDIA_GROUP: Просмотр частей загруженного разделенного файла в медиа-группе. По умолчанию False. Bool.
  • LEECH_FILENAME_PREFIX: добавить пользовательское слово к имени файла. Str
  • DUMP_CHAT_ID: Идентификатор чата, куда будут загружаться похищенные файлы. Int. ПРИМЕЧАНИЕ . Доступно только для супергруппы/канала. Добавлять -100перед идентификатором канала/супергруппы. Короче говоря, не добавляйте идентификатор бота или свой идентификатор!

qBittorrent/Aria2c​


  • TORRENT_TIMEOUT: Тайм-аут загрузки мертвых торрентов с помощью qBittorrent и Aria2c в секундах. Int
  • BASE_URL: Действительный БАЗОВЫЙ URL-адрес, по которому развернут бот для использования выбора торрент-веб-файлов. Формат URL должен быть , где myipэто IP/домен (общедоступный) вашего бота или если вы выбрали порт, отличный от 80так что пишите в таком формате http://myip:port ( httpи не https). Str
  • BASE_URL_PORT: какой порт BASE_URL . По умолчанию 80. Int
  • WEB_PINCODE: Запрашивать ли пин-код перед выбором файлов из торрента в сети или нет. По умолчанию False. Bool.
    • Qbittorrent ПРИМЕЧАНИЕ . Если у вас проблемы с оперативной памятью, установите ограничение для MaxConnections, снижаться AsyncIOThreadsCount, установить лимит DiskWriteCacheSizeк 32и уменьшить MemoryWorkingSetLimitиз qbittorrent.conf или команды bsetting.

RSS​


  • RSS_DELAY: время в секундах для интервала обновления rss. рекомендуемые 900минимум второй. По умолчанию 900в сек. Int
  • RSS_CHAT_ID: Идентификатор чата, куда будут отправляться rss-ссылки. Если вы хотите, чтобы сообщение было отправлено на канал, добавьте идентификатор канала. Добавлять -100перед идентификатором канала. Int
    • RSS ПРИМЕЧАНИЯ : RSS_CHAT_IDтребуется, иначе монитор не будет работать. Вы должны использовать USER_STRING_SESSION--ИЛИ-- КАНАЛ . Если вы используете канал, то бот должен быть добавлен как в канал, так и в группу (связанную с каналом) и RSS_CHAT_ID— это идентификатор канала, поэтому сообщения, отправленные ботом на канал, будут пересылаться в группу. В противном случае с USER_STRING_SESSIONдобавить идентификатор группы для RSS_CHAT_ID. Если DATABASE_URLне добавлено, вы пропустите каналы, пока бот находится в автономном режиме.

МЕГА​


  • MEGA_EMAIL: Электронная почта, используемая для входа на mega.nz для использования премиум-аккаунта. Str
  • MEGA_PASSWORD: пароль для учетной записи mega.nz. Str

Система очереди​


  • QUEUE_ALL: количество параллельных задач загрузки и выгрузки. Например, если добавлено 20 задач и QUEUE_ALLявляется 8, то сумма задач загрузки и выгрузки равна 8, а остальные в очереди. Int. ПРИМЕЧАНИЕ : если вы хотите заполнить QUEUE_DOWNLOADили QUEUE_UPLOAD, затем QUEUE_ALLзначение должно быть больше или равно наибольшему и меньше или равно сумме QUEUE_UPLOADи QUEUE_DOWNLOAD.
  • QUEUE_DOWNLOAD: Количество всех параллельных задач загрузки. Int
  • QUEUE_UPLOAD: количество всех параллельных задач загрузки. Int

Поиск торрентов​


  • SEARCH_API_LINK: Поиск ссылки на приложение API. Получите свой API из развертывания этого . Str
    • Поддерживаемые сайты:
    • 1337x, Piratebay, Nyaasi, Torlock, Torrent Galaxy, Zooqle, Kickass, Bitsearch, MagnetDL, Libgen, YTS, Limetorrent, TorrentFunk, Glodls, TorrentProject и YourBittorrent
  • SEARCH_LIMIT: Лимит поиска для API поиска, лимит для каждого сайта, а не общий лимит результатов. По умолчанию ноль (ограничение API по умолчанию для каждого сайта). Int
  • SEARCH_PLUGINS: Список поисковых плагинов qBittorrent (необработанные ссылки на github). Я добавил несколько плагинов, вы можете удалять/добавлять плагины по своему усмотрению. Основной источник: . List



3. Соберите и запустите образ Docker​


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


  • Существует два метода сборки и запуска докера:
    1. Использование официальных команд докера.
    2. Использование docker-compose. (Рекомендуемые)



Создайте и запустите образ Docker, используя официальные команды Docker​


  • Запустите демон Docker (ПРОПУСТИТЕ, если он уже запущен, чаще всего этого делать не нужно):

sudo dockerd

  • Соберите образ Docker:

sudo docker build . -t mltb

  • Запустите образ:

sudo docker run -p 80:80 -p 8080:8080 mltb

  • Чтобы остановить работающее изображение:

sudo docker ps

sudo docker stop id



Создайте и запустите образ Docker с помощью docker-compose​


NOTE: If you want to use ports other than 80 and 8080 for torrent file selection and rclone serve respectively, change it in also.


  • Install docker-compose

sudo apt install docker-compose

  • Build and run Docker image or to view current running image:

sudo docker-compose up

  • After editing files with nano for example (nano start.sh):

sudo docker-compose up --build

  • To stop the running image:

sudo docker-compose stop

  • To run the image:

sudo docker-compose start

  • Чтобы получить последний журнал из уже запущенного образа (после монтирования папки):

sudo docker-compose up

  • Учебное видео из репозитория Tortoolkit для создания докеров и проверки портов






Заметки о докере​


ВАЖНЫЕ ПРИМЕЧАНИЯ :


  1. Набор BASE_URL_PORTи RCLONE_SERVE_PORTпеременные в любой порт, который вы хотите использовать. По умолчанию 80и 8080соответственно.
  2. Вы должны остановить работающий образ перед удалением контейнера, и вы должны удалить контейнер перед изображением.
  3. Чтобы удалить контейнер (это не повлияет на образ):

sudo docker container prune

  1. Чтобы удалить изображения:

sudo docker image prune -a

  1. Проверьте количество процессоров вашей машины с помощью nproccmd и умножить на 4, затем отредактировать AsyncIOThreadsCountв qBittorrent.conf.



Дополнительно​


Команды бота задаются в


mirror - or /m Mirror
qbmirror - or /qm Mirror torrent using qBittorrent
leech - or /l Leech
qbleech - or /ql Leech torrent using qBittorrent
ytdl - or /y Mirror yt-dlp supported link
ytdlleech - or /yl Leech through yt-dlp supported link
clone - Copy file/folder to Drive
count - Count file/folder from Drive
usetting - User settings
bsetting - Bot settings
status - Get Mirror Status message
btsel - Select files from torrent
rss - Rss menu
list - Search files in Drive
search - Search for torrents with API
cancel - Cancel a task
cancelall - Cancel all tasks
del - Delete file/folder from Drive
log - Get the Bot Log
shell - Run commands in Shell
restart - Restart the Bot
stats - Bot Usage Stats
ping - Ping the Bot
help - All cmds with description



Получение файла учетных данных Google OAuth API и файла token.pickle​


ПРИМЕЧАНИЯ


  • Старая аутентификация изменилась, теперь мы не можем использовать бота или реплит для генерации token.pickle. Вам нужна ОС с локальным браузером. Например Termux.
  • Пользователи Windows должны установить python3 и pip. Вы можете узнать, как их установить и использовать, в Google или в этом из .
  • Вы можете открыть ТОЛЬКО сгенерированную ссылку из generate_drive_token.pyв локальном браузере.

  1. Посетите
  2. Перейдите на вкладку OAuth Consent, заполните ее и сохраните.
  3. Перейдите на вкладку «Учетные данные» и нажмите «Создать учетные данные» -> «Идентификатор клиента OAuth».
  4. Выберите «Рабочий стол» и «Создать».
  5. Опубликуйте приложение экрана согласия OAuth, чтобы предотвратить token.pickle истечение срока действия
  6. Используйте кнопку загрузки, чтобы загрузить свои учетные данные.
  7. Переместите этот файл в корень зеркального бота и переименуйте его в учетные данные.json.
  8. Посетите
  9. Найдите Google Drive Api и включите его.
  10. Наконец, запустите скрипт для создания файла token.pickle для Google Диска:

pip3 install google-api-python-client google-auth-httplib2 google-auth-oauthlib
python3 generate_drive_token.py



Получение rclone.conf​


  1. Установите rclone с
  2. Создайте новый пульт (ы), используя rclone configкоманда.
  3. Скопируйте rclone.conf из .config/rclone/rclone.conf в папку репозитория.



Загрузить​


  • RCLONE_PATHкак GDRIVE_IDпуть по умолчанию для зеркала. В дополнение к этим переменным DEFAULT_UPLOADвыбрать инструмент по умолчанию, будь то rclone или google-api-python-client.
  • Если DEFAULT_UPLOAD= 'rc', то вы должны заполнить RCLONE_PATHс путем по умолчанию или с rclдля выбора пути назначения для каждой новой задачи.
  • Если DEFAULT_UPLOAD= 'gd', то вы должны заполнить GDRIVE_IDс идентификатором папки/TD.
  • rclone.conf можно добавить перед развертыванием, как token.pickle, в корень папки репо или использовать bsetting, чтобы загрузить его как частный файл.
  • Если rclone.conf выгружен из использования или добавлен в rclone/{user_id}.confзатем RCLONE_PATHдолжен начинаться с mrcc:.
  • Всякий раз, когда вы хотите вручную написать путь для использования пользователя rclone.conf, добавленного из использования, вы должны добавить mrcc:в начале.
  • Короче говоря, up: имеет 4 возможных значения: gd (загрузить в GDRIVE_ID), rc (загрузить в RCLONE_PATH), rcl (выбрать путь Rclone) и rclone_path (remote: path (владелец rclone.conf) или mrcc: remote: путь(пользователь rclone.conf))



ПЕРЕДАЧА РЕПО (рекомендуется)​


  • UPSTREAM_REPOпеременная может использоваться для редактирования/добавления любого файла в хранилище.
  • Вы можете добавить ссылку на частный/общедоступный репозиторий, чтобы захватить/перезаписать все файлы из него.
  • Вы можете пропустить добавление личных файлов, таких как token.pickle или папки учетных записей, перед развертыванием, просто заполните UPSTREAM_REPOчастный, если вы хотите получить все файлы, включая личные файлы.
  • Если вы добавили личные файлы во время развертывания и добавили личные UPSTREAM_REPOи ваши личные файлы в этом частном репозитории, поэтому ваши личные файлы будут перезаписаны из этого репозитория. Кроме того, если вы используете базу данных для личных файлов, все файлы из базы данных будут переопределять личные файлы, добавленные перед развертыванием или из личных файлов. UPSTREAM_REPO.
  • Если вы заполнили UPSTREAM_REPOс официальной ссылкой на репозиторий, то будьте осторожны, если какие-либо изменения в файле requirements.txt ваш бот не запустится после перезапуска. В этом случае вам нужно выполнить повторное развертывание с обновленным кодом, чтобы установить новые требования, или просто изменив UPSTREAM_REPOвам форк ссылки с теми старыми обновлениями.
  • Если вы заполнили UPSTREAM_REPOс вашей ссылкой на форк будьте осторожны, если вы получили коммиты из официального репозитория.
  • Изменения в вашем UPSTREAM_REPOвступит в силу только после перезапуска.



Семя битторрента​


  • С использованием -dОдин только аргумент приведет к использованию глобальных опций для aria2c или qbittorrent.

qbittorrent​


  • Глобальные параметры: GlobalMaxRatioи GlobalMaxSeedingMinutesв qbittorrent.conf, -1означает отсутствие ограничений, но вы можете отменить их вручную.
    • ПРИМЕЧАНИЕ . Не меняйте MaxRatioAction.

Ария2с​


  • Глобальные параметры: --seed-ratio(0 означает отсутствие ограничений) и --seed-time(0 означает отсутствие семени) в aria.sh.



Использование учетных записей служб для загрузки, чтобы избежать ограничения скорости пользователей​


Чтобы учетная запись службы работала, необходимо установить USE_SERVICE_ACCOUNTS= "True" в файле конфигурации или переменных среды. ПРИМЕЧАНИЕ . Использование учетных записей служб рекомендуется только при загрузке на общий диск.

1. Создайте учетные записи службы.


Давайте создадим только те сервисные аккаунты, которые нам нужны.


Предупреждение : Злоупотребление этой функцией не является целью этого проекта, и мы НЕ рекомендуем вам создавать много проектов, только один проект и 100 SA позволяют вам много использовать, также возможно, что чрезмерное злоупотребление может привести к блокировке ваших проектов Google.


ПРИМЕЧАНИЕ . Если вы ранее создавали SA из этого скрипта, вы также можете просто повторно загрузить ключи, выполнив:

python3 gen_sa_accounts.py --download-keys $PROJECTID

ПРИМЕЧАНИЕ. 1 учетная запись службы может загружать/копировать около 750 ГБ в день, 1 проект может создать 100 учетных записей службы, поэтому вы можете загружать 75 ТБ в день.

ПРИМЕЧАНИЕ. Все люди могут копировать 2TB/DAYот каждого создателя файла (аккаунт загрузчика), поэтому, если вы получили сообщение об ошибке userRateLimitExceededэто не означает, что ваш лимит превышен, но превышен лимит создателя файла, который 2TB/DAY.

Два способа создания учетных записей служб​


Выберите один из этих способов


1. Создайте учетные записи службы в существующем проекте (рекомендуемый метод)​


  • Перечислите идентификаторы ваших проектов

python3 gen_sa_accounts.py --list-projects

  • Автоматически включать службы с помощью этой команды

python3 gen_sa_accounts.py --enable-services $PROJECTID

  • Создать сервисные аккаунты для текущего проекта

python3 gen_sa_accounts.py --create-sas $PROJECTID

  • Скачать сервисные учетные записи как папку учетных записей

python3 gen_sa_accounts.py --download-keys $PROJECTID

2. Создайте учетные записи службы в новом проекте​


python3 gen_sa_accounts.py --quick-setup 1 --new-only

Будет создана папка с именем учетные записи, которая будет содержать ключи для учетных записей службы.


2. Добавьте сервисные аккаунты​


Два способа добавления сервисных аккаунтов​


Выберите один из этих способов


1. Добавьте их в группу Google, а затем на общий диск (рекомендуется)​


  • Подключить папку учетных записей

cd accounts

  • Захватите электронные письма из всех учетных записей в файл emails.txt, который будет создан в папке учетных записей.
  • For Windows using PowerShell

$emails = Get-ChildItem .\**.json |Get-Content -Raw |ConvertFrom-Json |Select -ExpandProperty client_email >>emails.txt

  • For Linux

grep -oPh '"client_email": "\K[^"]+' *.json > emails.txt

  • Размонтировать папку учетных записей

cd ..

Затем добавьте электронные письма из emails.txt в группу Google, после этого добавьте эту группу Google на свой общий диск и повысьте ее до менеджера и удалите файл email.txt из папки учетных записей.


2. Добавьте их на общий диск напрямую​


  • Бегать:

python3 add_to_team_drive.py -d SharedTeamDriveSrcID



Создать базу данных​


  1. Идти к зарегистрироваться.
  2. Создать общий кластер.
  3. нажмите на Databaseпод DeploymentЗаголовок, созданный вами кластер будет там.
  4. Нажмите на подключение, выберите Allow Acces From Anywhereи нажмите на Add IP Addressбез редактирования ip, затем создайте пользователя.
  5. После создания пользователя нажмите на Choose a connection, затем нажмите на Connect your application. Выбирать Driver питон и version 3.6 или выше .
  6. Скопируйте свой connection stringи заменить <password>с паролем вашего пользователя, затем нажмите закрыть.



Список нескольких дисков​


Использовать список из мульти ТД/папки. Запустите driveid.py в своем терминале и следуйте ему. Он сгенерирует файл list_drives.txt или вы можете просто создать list_drives.txtфайл в рабочем каталоге и заполните его, проверьте формат ниже:


DriveName folderID/tdID or `root` IndexLink(if available)
DriveName folderID/tdID or `root` IndexLink(if available)

Пример:


TD1 root
TD2 0AO1JDB1t3i5jUk9PVA



Аутентификация Yt-dlp и Aria2c с использованием файла .netrc​


Для использования премиум-аккаунтов в yt-dlp или защищенных индексных ссылках создайте файл .netrc в следующем формате:


Примечание . Создайте .netrc, а не netrc, этот файл будет скрыт, поэтому просмотрите скрытые файлы, чтобы отредактировать их после создания.


Формат:


machine host login username password my_password

Пример:


machine instagram login anas.tayyar password mypassword

Примечание для Instagram . Вы должны войти в систему, даже если хотите загружать общедоступные сообщения, и после первой попытки вы должны подтвердить, что вы вошли в систему с другого IP-адреса (вы можете подтвердить это из приложения для телефона).


Ютуб Примечание : для youtubeдля аутентификации используйте .


Используя Aria2c, вы также можете использовать встроенную функцию бота с именем пользователя или без него. Вот пример для индексной ссылки без имени пользователя.


machine example.workers.dev password index_password

Где хост — это имя экстрактора (например, instagram, Twitch). Можно добавить несколько учетных записей разных хостов, разделенных новой строкой.

Первоначальный источник

  • Анасти17
Об авторе

Комментарии

Нет комментариев для отображения.

Информация о статье

Автор
GOLO
Время чтения статьи
15 минут чтения
Просмотры
72
Последнее обновление

Больше в AI

Больше от GOLO

Поделиться этой статьей

196 486Темы
633 445Сообщения
3 618 292Пользователи
рпнгпгшааНовый пользователь
Верх