{"id":15017599,"url":"https://github.com/qwertyadrian/tg_autoposter","last_synced_at":"2025-04-09T22:10:26.146Z","repository":{"id":41512557,"uuid":"116904527","full_name":"qwertyadrian/TG_AutoPoster","owner":"qwertyadrian","description":"Telegram Bot for reposting from VK","archived":false,"fork":false,"pushed_at":"2025-03-08T08:59:50.000Z","size":603,"stargazers_count":100,"open_issues_count":15,"forks_count":19,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-04-02T21:06:34.230Z","etag":null,"topics":["bot","pyrogram","python","python3","telegram","telegram-api","telegram-bot","tg-autoposter","vk","vkontakte"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qwertyadrian.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-10T03:43:40.000Z","updated_at":"2025-03-08T08:59:54.000Z","dependencies_parsed_at":"2023-02-15T06:46:27.665Z","dependency_job_id":"45f7aa11-dae8-4e59-8930-dd58ab52baef","html_url":"https://github.com/qwertyadrian/TG_AutoPoster","commit_stats":{"total_commits":462,"total_committers":3,"mean_commits":154.0,"dds":"0.35064935064935066","last_synced_commit":"6a50e6cef5bcfead7b6f57a3d0de925734cfee27"},"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qwertyadrian%2FTG_AutoPoster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qwertyadrian%2FTG_AutoPoster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qwertyadrian%2FTG_AutoPoster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qwertyadrian%2FTG_AutoPoster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qwertyadrian","download_url":"https://codeload.github.com/qwertyadrian/TG_AutoPoster/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248119294,"owners_count":21050755,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bot","pyrogram","python","python3","telegram","telegram-api","telegram-bot","tg-autoposter","vk","vkontakte"],"created_at":"2024-09-24T19:50:43.994Z","updated_at":"2025-04-09T22:10:26.136Z","avatar_url":"https://github.com/qwertyadrian.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"TG_AutoPoster \n=============\nБот, пересылающий записи из групп ВК в канал/чат/ЛС в Telegram.\n\n[![License MIT](https://img.shields.io/github/license/qwertyadrian/TG_AutoPoster.svg)](/LICENCE.md) \n![Python Version](https://img.shields.io/pypi/pyversions/tg_autoposter) \n[![Code style: Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![issues](https://img.shields.io/github/issues/qwertyadrian/TG_AutoPoster.svg)](https://github.com/qwertyadrian/TG_AutoPoster/issues) \n[![stars](https://img.shields.io/github/stars/qwertyadrian/TG_AutoPoster.svg)](https://github.com/qwertyadrian/TG_AutoPoster/stargazers)\n[![PyPI](https://img.shields.io/pypi/v/TG-AutoPoster)](https://pypi.org/project/TG-AutoPoster/)\n[![docker](https://img.shields.io/badge/docker%20image-tg__autoposter-FF9900)](https://hub.docker.com/r/qwertyadrian/tg_autoposter)\n***\n### Установка (обновление)\n```shell script\npip3 install -U TG-AutoPoster\n```\n***\n### Настройка\n1. Создайте файл `config.yaml`, скопируйте в него содержимое файла [config.yaml.example](/config.yaml.example) и выполните настройку ключа `vk`\n\n|                 Параметр                 |                                                                                                                                                                                                        Описание                                                                                                                                                                                                         |\n|:----------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|\n|                  login                   |                                                                                                                                                                                                        Логин ВК                                                                                                                                                                                                         |\n|                   pass                   |                                                                                                                                                                                                        Пароль ВК                                                                                                                                                                                                        |\n|          token (необязательно)           | **Рекомендуется к использованию.** Cервисный ключ доступа или ключ доступа пользователя ([подробнее](https://vk.com/dev/access_token)). Если он задан, то логин и пароль игнорируются. При его использовании не будут доступны аудиозаписи (при использовании сервисного ключа доступа также не будут доступны истории). Получить ключ доступа пользователя можно с помощью [этого](https://vkhost.github.io/) сервиса. | \n\n2. Получите ваши `api_id` и `api_hash` на https://my.telegram.org/apps и настройте ключ `telegram` (подробнее об Telegram API Keys [здесь](https://docs.pyrogram.org/intro/setup#api-keys))\n\n| Параметр  |                                Описание                                |\n|:---------:|:----------------------------------------------------------------------:|\n|  api_id   |                               App api_id                               |\n| api_hash  |                              App api_hash                              |\n| bot_token | Токен Telegram бота, полученный у [@BotFather](https://t.me/BotFather) |\n\n3. Если необходимо, настройте использование SOCKS5 прокси, добавив ключ `proxy` со следующим содержимым:\n\n|         Параметр         | Возможные значения |                Описание                |\n|:------------------------:|:------------------:|:--------------------------------------:|\n|         enabled          |    true, false     |         Использовать ли прокси         |\n|         hostname         |                    |  IP адрес (или домен) прокси сервера   |\n|           port           |                    |          Порт прокси сервера           |\n| username (необязательно) |                    |            Имя пользователя            |\n| password (необязательно) |                    |                 Пароль                 |\n\n### Запуск                                                                                                                                                                                                                                                                                                                                                            \n1. Для запуска используйте консольную команду `python3 -m TG_AutoPoster`     \n2. Активируйте бота в чате командой `/start`\n\nАвтопостинг **рекомендуется** настраивать через чат с ботом. Подробнее можно узнать, отправив боту команду `/help`\n\nДля доступных параметров командой строки используйте `python3 -m TG_AutoPoster --help`\n\nПо умолчанию бот проверяет группы на наличие новых постов раз в час. Если необходимо изменить период проверки постов\nзапустите бота с параметром командной строки `--sleep N`, где N — значение в секундах. Не рекомендуется устанавливать\nмалое значение, так как это может привести к заморозке страницы ВК ([подробнее](https://github.com/qwertyadrian/TG_AutoPoster/issues/22)).\n\n***\n#### Описание настроек группы\n\n|           Параметр            |                                                                                                                                                                                                                                            Описание                                                                                                                                                                                                                                            |\n|:-----------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|\n|            channel            |                                                                                                                                                                                                     Один или несколько ID каналов/чатов в Telegram, в которые отправлять посты из групп ВК                                                                                                                                                                                                     |\n|    last_id (необязательно)    |                                                                                                                                                                                          ID последнего отправленного поста. Если параметр отсутствует, он будет добавлен автоматически со значением 0                                                                                                                                                                                          |\n|   pinned_id (необязательно)   |                                                                                                                                                                                                                                    ID закреплённого поста.                                                                                                                                                                                                                                     |\n| last_story_id (необязательно) |                                                                                                                                                                                                                               ID последней отправленной истории.                                                                                                                                                                                                                               |\n| use_long_poll (необязательно) | Использовать [Long Poll API](https://vk.com/dev/bots_longpoll) для получения постов из **своей** группы (или в которой вы являетесь администратором) в режиме реального времени. Чтобы использовать Long Poll API, откройте раздел «Управление сообществом», на вкладке «Работа с API»→«Long Poll API» выберите «Включено», «Версия API»: 5.131. Также необходимо включить тип события «Записи на стене»: «Добавление» на вкладке «Типы событий».\u003cbr/\u003eЗначение параметра по умолчанию: `false` |\n\n\n#### Описание настроек автопостинга (ключ `settings`)\n\n|         Параметр         |                                    Возможные значения                                     |                                                                                 Описание                                                                                 |\n|:------------------------:|:-----------------------------------------------------------------------------------------:|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|\n|        sign_posts        |                                        true, false                                        |                                    Указывать ли автора поста (если это возможно) и ссылку на оригинальный пост. По умолчанию: `true`                                     |\n|       send_reposts       |                                  false, post_only, true                                   |                        Отправлять ли репосты? Подробнее в [config.yaml.example](/config.yaml.example). По умолчанию отправка репостов отключена.                         |\n|       send_stories       |                                        false, true                                        |                                                               Отправлять ли истории? По умолчанию: `false`                                                               |\n|       what_to_send       |                     all, text, link, photo, doc, video, music, polls                      |                     Какие типы вложений отправлять. Подробнее в [config.yaml.example](/config.yaml.example). По умолчанию отправляются все вложения.                     |\n|        stop_list         |                                                                                           | Абсолютный путь к файлу, содержащий стоп-слова (по одному слову на каждой строке). Если вы не хотите использовать стоп-слова удалите этот параметр из файла конфигурации |\n|     invert_stop_list     |                                        true, false                                        |        Инвертировать список стоп-слов (по умолчанию отключено). Будут отправляться посты, в которых содержатся указанные в списке слова или регулярные выражения         |\n|        blacklist         |                                                                                           |                   Абсолютный путь к файлу, содержащий слова, которые будут удалены из текста отправляемого поста. Поддерживаются регулярные выражения.                   |\n|   disable_notification   |                                        true, false                                        |                                      Отправляет сообщения молча. Пользователи получат уведомление без звука. По умолчанию: `false`                                       |\n| disable_web_page_preview |                                        true, false                                        |                                                     Отключить предпросмотр ссылок в сообщениях. По умолчанию: `true`                                                     |\n|       posts_count        |                                                                                           |                                                   Количество отправляемых ботом новых постов за раз. По умолчанию 11.                                                    |\n|          header          | Текст с форматированием [Markdown](https://core.telegram.org/bots/api#formatting-options) |                                                             Текст, который будет добавлен в начало сообщения                                                             |\n|          footer          |                             Текст с форматированием Markdown                              |                                                             Текст, который будет добавлен в конец сообщения                                                              |\n\nВсе параметры ключа `settings` могут быть заданы индивидуально для каждой группы\n***\nДополнительно:\n[Использование Docker контейнера](/Docker.md)\n\nОтчеты об ошибках и предложения отправлять в:\n1. [GitHub Issues](https://github.com/qwertyadrian/TG_AutoPoster/issues/new/choose)\n2. Telegram: [@QwertyAdrian](https://t.me/QwertyAdrian)\n\nДля пожертвований на развитие проекта:\n1. Bitcoin: `1H1UVnXgvcLo3RWmxuYmi7b16ADo6XBWw5`\n2. TON: `EQD42Z5d8d1gT1uSpKTAaLYHlQ95vdMXrlNlYMpSFpQawwuY`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqwertyadrian%2Ftg_autoposter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqwertyadrian%2Ftg_autoposter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqwertyadrian%2Ftg_autoposter/lists"}