Mediawiki - библиотеки Telethon и mwclient

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2026
Перейти к:навигация, поиск

Mediawiki - библиотеки Telethon и mwclient

Telethon: для чтения постов из Telegram.
mwclient: для удобной отправки текста в MediaWiki.


Установка на Ubuntu 24.04:

# apt update
# apt install python3-venv python3-full -y
# python3 -m venv venv
# source venv/bin/activate
# pip install telethon mwclient



Проверить подключение к тг каналу

# vi check_tg.py


from telethon import TelegramClient
# Вставьте ваши данные с my.telegram.org
api_id = ЧИСЛО  # числом
api_hash = 'ХЭШ'
channel_username = 'ru_tech_talk' # публичный ник или ссылка канала

client = TelegramClient('my_auth_session', api_id, api_hash)

async def main():
   print("Пробуем подключиться к Telegram...")
   # Проверка авторизации и получение информации о канале
   entity = await client.get_entity(channel_username)
   print(f"Успех! Подключились к каналу: {entity.title}")

   print("\nПоследние 3 поста:")
   async for message in client.iter_messages(entity, limit=3):
       # Ограничим вывод текста для чистоты консоли
       text = (message.text[:50] + '...') if message.text and len(message.text) > 50 else message.text
       print(f"- [ID:{message.id}] {text}")

with client:
   client.loop.run_until_complete(main())


Запуск:

(venv) ~/tg-to-wiki# python3 check_tg.py
Please enter your phone (or bot token): +380_______
Please enter the code you received: Ваш_код
Please enter your password: облачный пароль
Signed in successfully as AAA; remember to not break the ToS or you will risk an account ban!
Пробуем подключиться к Telegram...
Успех! Подключились к каналу: Tech Talk
Последние 3 поста:
- [ID:1022] **Россиянам за рубежом закрывают возможность заход...
- [ID:1021] **В США запретили продавать все новые маршрутизато...
- [ID:1020] **Общественные туалеты в Москве попросили внести в...
(venv) ~/tg-to-wiki# ls
check_tg.py  my_auth_session.session  venv
(venv) /tg-to-wiki# cat my_auth_session.session


my_auth_session.session —  "ключ" к аккаунту
×
Реклама