Зная ID, можно получить о владельце аккаунта следующую информацию:
- фамилию, имя, отчество
- возраст
- город рождения и проживания
- семейное положение
- список родственников и членов семьи, круг общения
- интересы, мировоззрение, жизненную позицию
- литературные, музыкальные, игровые и иные предпочтения
База данных сервиса, который позволяет получать информацию по ID в Telegram, содержит информацию по 29 миллионам пользователей.
- С помощью ID в Telegram можно получить следующую информацию о владельце аккаунта: фамилию, имя, отчество, возраст, город рождения и проживания, семейное положение, список родственников и членов семьи, круг общения, интересы, мировоззрение, жизненную позицию, литературные, музыкальные, игровые и иные предпочтения.
- Telegram user ID — это уникальный цифровой код, присваиваемый каждому аккаунту при регистрации, который не отображается в меню мессенджера.
- С помощью бота в Telegram можно искать информацию по ФИО, номеру телефона, номеру автомобиля, адресу электронной почты, а также данным юридического лица. Бот может найти сведения о прописке гражданина, записи о нарушении им закона, данные о родственниках.
- С помощью встроенного сервиса «Люди рядом» в Telegram можно вычислить точные координаты пользователей в несколько минут. Алгоритм обнаружения прост и не требует специальных навыков хакинга.
- Что дает ID Телеграм
- Что можно узнать о человеке в телеграмме
- Можно ли вычислить человека в телеграмме
- Как найти человека по нику в телеграмме
- Как узнать чей аккаунт в телеграмме
- Как скрыть себя от контактов в телеграмме
- Как узнать номер в телеграмме по ID
- Как узнать на кого подписан человек в телеграмме
- Как понять что человек тебя Заблочил в телеграмме
- Как спецслужбы читают Телеграм
- Можно ли вычислить по IP в телеграмме
- Как можно отследить телеграмму
- Как в телеграмме общаться без номера телефона
- Как найти человека который удалил чат в Телеграме
- Почему мне в телеграмме пишут незнакомые люди
- Как изменить свой ID в телеграмме
- Как получить Chat ID
- Что значит аккаунт скрыт пользователем
- Как найти человека в телеграмме без информации
- Как узнать где сейчас находится человек
- Как узнать кто заходил в телеграмме на айфоне
- Почему меня не могут найти в телеграмме по номеру телефона
- Как узнать адрес сайта телеграмм
- Что такое имя пользователя в телеграмме
- Как узнать кто сделал стикеры в телеграмме
- Как отследить местоположение человека по номеру телефона
- Можно ли определить местонахождение человека по номеру телефона
- Как включить режим инкогнито в телеграмме
- Как найти канал человека в телеграмме
- Как поменять свой ID в телеграмме
- Как найти человека в телеграмме без номера телефона
- Как удалить ID Телеграм
Что дает ID Телеграм
Telegram user ID — это цифровой код, который присваивается каждому аккаунту при регистрации. Этот идентификатор нужен системе, чтобы корректно сохранять данные и связывать их с конкретным юзером. Найти ID своего аккаунта или другого чата в меню мессенджера не получиться.
Что можно узнать о человеке в телеграмме
Бот позволяет искать информацию по ФИО, номеру телефона, номеру автомобиля, адресу электронной почты, а также данным юридического лица. Найти он может сведения о прописке гражданина, записи о нарушении им закона, данные о родственниках.
Можно ли вычислить человека в телеграмме
Telegram позволяет за несколько минут вычислить точные координаты своих пользователей, использующих встроенный сервис «Люди рядом». Алгоритм обнаружения прост, что дает возможность следить за нужным человеком даже тем, у кого нет никаких навыков хакинга.
Как найти человека по нику в телеграмме
На мобильном устройстве или компьютере вбейте в строку поиска имя, фамилию либо никнейм человека, которого хотите найти. Если нужный пользователь нашёлся, выберите его в списке для перехода в чат и кликните по имени профиля. Нажмите «Добавить контакт», а затем — «Готово» для подтверждения.
Как узнать чей аккаунт в телеграмме
Для получения информации о пользователе мессенджера Telegram следует направить боту его никнейм или номер ID. Кроме этого, если пользователь не запретил передачу данных о себе при пересылке сообщений, можно просто переадресовать боту любое сообщение, полученное от него.
Как скрыть себя от контактов в телеграмме
Для этого откройте настройки мессенджера, перейдите в раздел «Конфиденциальность» и нажмите на «Номер телефона». Чтобы полностью скрыть телефон в первом блоке выберите «Никто», а во втором «Мои контакты». Ниже можно будет добавить исключения.
Как узнать номер в телеграмме по ID
Как узнать на кого подписан человек в телеграмме
Как увидеть количество подписчиков другого канала Телеграм:
- Кликнуть на название собственного канала.
- Выбрать раздел с участниками и потом кликнуть на пункт под названием «Подписчики».
- Перед пользователем появится список всех подписчиков.
Как понять что человек тебя Заблочил в телеграмме
Попробуйте открыть фото профиля
В любом чате с пользователем перейдите в его профиль, нажав на имя, и попытайтесь просмотреть установленное на аватар фото. Если ничего не выходит, то, скорее всего, вас заблокировали.
Как спецслужбы читают Телеграм
Можно ли вычислить по IP в телеграмме
Российская компания «Интернет-поиск» совместно с компанией T. Hunter разработала сервис, который позволяет находить пользователя Telegram по его IP-адресу.
Как можно отследить телеграмму
Как узнать, доставлена ли телеграмма? Для того, чтобы узнать точный статус доставки телеграммы, отправленной с помощью сервиса ТЕЛЕГРАФ ОНЛАЙН, необходимо при подаче телеграммы заказать дополнительную услугу «Уведомление телеграфом». Сервис не позволяет заказать уведомление отдельно, после подачи телеграммы.
Как в телеграмме общаться без номера телефона
Просто откройте раздел «Contacts» («Контакты») в приложении, и перейдите в раздел Add People Nearby («Добавить людей поблизости»), чтобы поделиться своим контактом в Telegram с пользователями поблизости (раздел должен быть открыт у вас и у собеседника).
Как найти человека который удалил чат в Телеграме
Политика Telegram в отношении конфиденциальности пользовательских данных такова, что пересылаемая информация не архивируется. При удалении сообщения, фото или видео из чата оно также исчезает с серверов и его нельзя восстановить. То же самое касается и самих чатов.
Почему мне в телеграмме пишут незнакомые люди
Почему появляются контакты в Телеграм
Вы вставили себе в смартфон чужую сим-карту; Номер, которым вы пользуетесь, ранее принадлежал кому-то другому; Вы авторизовались под чужой учётной записью Apple ID или Google; Вы вошли в свой аккаунт Telegram на устройстве постороннего пользователя.
Как изменить свой ID в телеграмме
Каждый аккаунт Telegram имеет постоянный User ID, сменить который пользователь не имеет возможности. Многие базы данных уже содержат User ID, что позволяет получить историю мобильных номеров, привязывавшихся к аккаунту ранее, и использованных ранее username.
Как получить Chat ID
Что значит аккаунт скрыт пользователем
Скрытые аккаунты не видят друг друга, основные аккаунты видят только основных. О существовании скрытого аккаунта знает только сам владелец устройств. Скрытые аккаунты не отображаются в общем списке аккаунтов, доступ к ним только через ввод код-пароля в режиме блокировки Telegram-клиента.
Как найти человека в телеграмме без информации
Как найти пользователя по имени без номера телефона
Как узнать где сейчас находится человек
Рассмотрим удобные приложения, которые помогут найти близких людей:
- ГДЕ МОИ ДЕТИ: ЛОКАТОР ДЛЯ ТЕЛЕФОНА И GPS-ЧАСОВ 0+
- GEOZILLA — СЕМЕЙНЫЙ ЛОКАТОР. GPS ТРЕКЕР
- СЕМЕЙНЫЙ ЛОКАТОР ZOEMOB.
- GPS — ТРЕКЕР LIFE 360.
- FAMILY LOCATOR — PHONE TRAKER.
- FRIEND LOCATOR.
- PHONERADAR ОНЛАЙН
- GEOLOCATOR.
Как узнать кто заходил в телеграмме на айфоне
Как понять, что кто-то подключился к вашему аккаунту в Telegram?:
- зайти в настройки (три горизонтальные полоски вверху экрана);
- выбрать «Конфиденциальность»;
- найти там строку «Активные сеансы»;
- нажать и просмотреть список всех устройств, где сейчас открыт ваш аккаунт.
Почему меня не могут найти в телеграмме по номеру телефона
Даже у тех, кто добавит контакт в свою записную книжку, не получится найти профиль в мессенджере по номеру телефона. Установить такой уровень приватности можно в настройках конфиденциальности. В параметре «Кто может видеть мой номер телефона» надо поставить значение «Никто».
Как узнать адрес сайта телеграмм
Как в Telegram узнать свой ID:
- Для этого, откройте Telegram, и в строке поиска введите userinfobot:
- После чего, выберите бота, как на скрине:
- Активируйте диалог с ним, и нажмите на кнопку Start:
- В итоге, следующим же сообщением вы получите информацию о вашем Telegram аккаунте: login, id, имя, фамилию:
Что такое имя пользователя в телеграмме
Как узнать кто сделал стикеры в телеграмме
Для того, чтобы найти автора любого стикерпака, им нужно просто сбросить стикер с него — и они получат результат. К примеру, недавно признали экстремистскими стикеры «Саша 3%».
Как отследить местоположение человека по номеру телефона
Узнать местоположение другого телефона можно при помощи стандартных приложений в операционной системе. Например, через Google Maps: для этого на отслеживаемом телефоне нужно зайти в приложение, активировать пункт меню «Показывать, где я», указать свой телефон, электронную почту и период отслеживания.
Можно ли определить местонахождение человека по номеру телефона
Поиск через оператора Наиболее точно может определить геопозицию человека по номеру телефона может оператор связи. Только загвоздка заключается в том, что он вправе сделать это при следующих обстоятельствах: по запросу из полиции или других компетентных органов, а это довольно длительный процесс.
Как включить режим инкогнито в телеграмме
Настроить это просто:
- В приложении откройте «Настройки» → «Конфиденциальность».
- Перейдите в раздел «Последняя активность».
- Здесь можно задать настройки как для групп пользователей, так и для отдельных контактов. Например, можно выбрать «Никто», но внести несколько пользователей-исключений в список «Всегда показывать».
Как найти канал человека в телеграмме
- Ввести в поисковую строку название канала или юзернейм.
- Или ввести часть названия/юзернейма — начало или то, что после нижнего пробела.
Как поменять свой ID в телеграмме
Каждый аккаунт Telegram имеет постоянный User ID, сменить который пользователь не имеет возможности. Многие базы данных уже содержат User ID, что позволяет получить историю мобильных номеров, привязывавшихся к аккаунту ранее, и использованных ранее username.
Как найти человека в телеграмме без номера телефона
Как найти пользователя по имени без номера телефона
Как удалить ID Телеграм
Для этого в приложении для Android надо сделать вот что:
Зайдите в свой профиль и в левом верхнем углу перейдите в главное меню. Это три параллельные черточки. Перейдите в настройки, а затем выберите пункт «Конфиденциальность». Прокручивайте страницу до момента, когда увидите пункт «Удалить мой аккаунт».
Telegram — это один из самых популярных мессенджеров в мире, который обладает удобными функциями и гарантирует высокий уровень защиты переписки. Однако, многие пользователи задаются вопросом, что можно узнать по ID в Telegram и насколько личные данные защищены.
Telegram user ID — это цифровой код, который присваивается каждому аккаунту при регистрации. Он необходим для того, чтобы система могла корректно сохранять данные и связывать их с конкретным пользователем. Найти ID своего аккаунта или другого чата в меню мессенджера не получится. Однако, с помощью специального бота можно получить доступ к некоторым личным данным пользователя.
Используя ID, можно получить следующую информацию о владельце аккаунта в Telegram:
— фамилию, имя, отчество;
— возраст;
— город рождения и проживания;
— семейное положение;
— список родственников и членов семьи, круг общения;
— интересы, мировоззрение, жизненную позицию;
— литературные, музыкальные, игровые и иные предпочтения.
Кроме того, бот позволяет искать информацию по ФИО, номеру телефона, номеру автомобиля, адресу электронной почты, а также данным юридического лица. Найти он может сведения о прописке гражданина, записи о нарушении им закона, данные о родственниках.
Однако, стоит отметить, что использование личной информации без согласия владельца нарушает закон о защите персональных данных. Поэтому, необходимо быть осторожным при использовании подобных сервисов и уважать личную жизнь других людей.
Кроме того, Telegram позволяет за несколько минут вычислить точные координаты своих пользователей, использующих встроенный сервис «Люди рядом». Это может быть опасно для безопасности пользователей.
Источник: registratury.ru
Как узнать откуда пишет человек в телеграмме
Уязвимость скрывается в сервисе «Люди рядом», встроенном в мессенджер. С его помощью можно находить пользователей Telegram, находящихся поблизости — их место дислокации определяется по GPS-координатам и отслеживается в реальном времени.
- Можно ли в телеграмме узнать IP
- Как узнать номер телефона по нику в телеграмме
- Как можно определить местоположение человека
- Как узнать адрес в телеграмм
- Как показать Геолокацию в телеграмме
- Как найти человека по ID в телеграмме
- Что может дать IP-адрес
- Как узнать IP-адрес другого человека
- Как найти номер в телеграмме если он скрыт
- Почему в телеграмме появляются чужие номера
- Как узнать есть ли скрытые чаты в телеграмм
- Как можно отследить местонахождение телефона
- Можно ли отследить по номеру телефона
- Как по сообщению определить местоположение
- Как узнать кто смотрел посты в Телеграме
- Как узнать прослушивается ли телеграмм
- Как вычислить по IP адресу
- Как определить местоположение по IP адресу
- Что видит провайдер в Телеграме
- Почему в ТГ видно номер телефона
- Как можно проверить номер телефона
- Что значит аккаунт скрыт пользователем
- Что можно узнать о человеке в телеграмме
- Как найти человека в телеграмме зная его ID
- Как найти человека который удалил чат в телеграмме
- Как наказать человека в Телеграм
Можно ли в телеграмме узнать IP
Глава компании «Интернет-поиск» Игорь Бедеров сообщил о новой совместной разработке с T. Hunter. С ее помощью можно узнать IP-адрес любого пользователя мессенджера Telegram.
Как узнать номер телефона по нику в телеграмме
Для получения информации о пользователе мессенджера Telegram следует направить боту его никнейм или номер ID. Кроме этого, если пользователь не запретил передачу данных о себе при пересылке сообщений, можно просто переадресовать боту любое сообщение, полученное от него.
Как можно определить местоположение человека
Поиск через оператора:
- С помощью специальной услуги
- Поиск через аккаунты Google или Apple.
- Приложения для поиска человека по местоположению его телефона
- Find My Friends.
- GeoLocator.
- Sygic Family Locator.
Как узнать адрес в телеграмм
Как узнать свой ID Telegram?:
Как показать Геолокацию в телеграмме
В Telegram геолокацию можно расшарить для одного собеседника или для чата. Нужно зайти в меню вложения (значок скрепки), выбрать опцию «Геопозиция» и «Транслировать мою геопозицию», а затем выбрать срок трансляции. Остановить трансляцию можно кликом по ее окошку в чате и кликом «Остановить трансляцию».
Как найти человека по ID в телеграмме
Что может дать IP-адрес
IP означает «Интернет-протокол» — набор правил, регулирующих формат данных, отправляемых через интернет или локальную сеть. По сути, IP-адрес — это идентификатор, позволяющий передавать информацию между устройствами в сети: он содержит информацию о местоположении устройства и обеспечивает его доступность для связи.
Как узнать IP-адрес другого человека
Для определения IP нужно получить прямой запрос с устройства пользователя. Например, если он отправит вам имейл, то IP‑адрес можно просмотреть в расширенной информации в сообщении. Другой вариант — человек должен перейти по ссылке из специального сервиса‑трекера, который отследит цепочку подключений и покажет адрес.
Как найти номер в телеграмме если он скрыт
Почему в телеграмме появляются чужие номера
Почему появляются контакты в Телеграм
Вы вставили себе в смартфон чужую сим-карту; Номер, которым вы пользуетесь, ранее принадлежал кому-то другому; Вы авторизовались под чужой учётной записью Apple ID или Google; Вы вошли в свой аккаунт Telegram на устройстве постороннего пользователя.
Как узнать есть ли скрытые чаты в телеграмм
Сразу обращаем внимание на замочек возле имени собеседника — это значок секретного чата. А вот так секретный чат выглядит в списке чатов. Зеленый шрифт с замочком. После того, как собеседник вам ответил, можно настроить автоуничтожение сообщений.
Как можно отследить местонахождение телефона
Как узнать, где находится устройство, заблокировать его или удалить с него данные:
- Откройте страницу android.com/find в браузере.
- Войдите в аккаунт Google.
- На потерянное устройство придет уведомление.
- На карте появится информация о том, где находится устройство.
Можно ли отследить по номеру телефона
Большинство мобильных операторов предлагают функцию геопоиска. Существует целый ряд мобильных приложений, позволяющих найти человека или устройство, используя телефонный номер. Некоторые онлайн-сервисы предоставляют возможность отслеживать местоположение человека.
Как по сообщению определить местоположение
С помощью WhatsApp:
Шаг 1: Откройте личный или групповой чат в WhatsApp, а затем нажмите на значок скрепки («прикрепить файл»). Шаг 2: В открывшемся меню выберите «Место», а затем — «Делиться геоданными». Шаг 3: Выберите период, в течение которого будете делиться своим местоположением, и нажмите кнопку «Отправить».
Как узнать кто смотрел посты в Телеграме
Как посмотреть, кто прочитал сообщение в Telegram на Android
Откройте нужный чат (численностью до 50 человек) и нажмите на своё сообщение, чтобы увидеть список просмотревших его. Нужно именно нажать на сообщение, а не задержать на нём палец как при выделении.
Как узнать прослушивается ли телеграмм
Открываем набор номера в приложении «Телефон», вводим код «*#21#» и звоним. После этого высвечивается окно, переадресовываются ли ваши данные. Введя «*#62#» вы узнаете, к кому идёт переадресация. Если ваш телефон прослушивается, везде будет написано «переадресация».
Как вычислить по IP адресу
Ваш или какой-либо другой точный домашний адрес вычислить по IP невозможно. Это могут сделать только правоохранительные органы, если они обратятся к интернет-провайдеру в случае нарушения вами закона.
Как определить местоположение по IP адресу
Сервис Geo IP позволяет проверить IP-адрес и местонахождение любого устройства, а также отображает приблизительную геолокацию: страну, город, регион и координаты на карте.
Что видит провайдер в Телеграме
Провайдер не может отследить сайты, на которые заходит пользователь. Он видит местоположение именно прокси сервера, а не вашего устройства. Применение этого посредника играет огромную роль в продажах по интернету, в продвижении своего канала, в общении с друзьями и коллегами.
Почему в ТГ видно номер телефона
В июне 2019 года появились новые настройки конфиденциальности. Как и раньше, если чей-то номер есть в вашей записной книжке — вы видите номер в профиле контакта в Telegram. По умолчанию, как и было до осени 2018 года, ваш номер телефона получают все ваши контакты (люди, чей номер есть в вашей записной книжке).
Как можно проверить номер телефона
Самый простой способ узнать информацию о человеке по номеру телефона — написать цифры телефона в строке поисковой системы. Дело в том, что поисковые системы подгружают в выдачу информацию со всех сайтов, где такой номер когда-либо встречался. Таким способом с большой вероятностью можно определить спам-звонки.
Что значит аккаунт скрыт пользователем
Скрытые аккаунты не видят друг друга, основные аккаунты видят только основных. О существовании скрытого аккаунта знает только сам владелец устройств. Скрытые аккаунты не отображаются в общем списке аккаунтов, доступ к ним только через ввод код-пароля в режиме блокировки Telegram-клиента.
Что можно узнать о человеке в телеграмме
Бот позволяет искать информацию по ФИО, номеру телефона, номеру автомобиля, адресу электронной почты, а также данным юридического лица. Найти он может сведения о прописке гражданина, записи о нарушении им закона, данные о родственниках.
Как найти человека в телеграмме зная его ID
Как найти человека который удалил чат в телеграмме
Политика Telegram в отношении конфиденциальности пользовательских данных такова, что пересылаемая информация не архивируется. При удалении сообщения, фото или видео из чата оно также исчезает с серверов и его нельзя восстановить. То же самое касается и самих чатов.
Как наказать человека в Телеграм
Как наказать человека за неприличные реакции на ваших сообщениях в Telegram:
- Нажмите и удерживайте палец на своем сообщении
- Тапните на строку со списком реакций
- Выберите пункт «Сообщить о спам-реакциях».
Источник: gostevushka.ru
Найти телегу через телеграм id
Регистрируем в Telegram новое приложение
Для подключения к Telegram API необходимы api_id и api_hash . Эти параметры выдаются при регистрации приложения в инструментах разработчика (при отсутствии доступа используйте VPN). Для авторизации указываем номер телефона, к которому привязан аккаунт Telegram.
Вводим пришедший в Telegram численно-буквенный код и попадаем на страницу регистрации нового приложения. Заполняем форму, достаточно первых двух граф:
В результате попадаем на страницу конфигурации приложения. Находим оба параметра, а также доступные MTProto-сервера и открытые (публичные) ключи.
Избегая проблем с безопасностью, сохраняем учетные данные в отдельном файле config.ini следующей структуры:
[Telegram] api_id = Telegram-API-ID api_hash = Telegram-API-Hash username = Your-Telegram-Username
Поле username далее будет использоваться лишь для автоматического сохранения сессии под именем username.session . Одному клиенту соответствует одна сессия, учтите это в случае запуска нескольких клиентов.
Создаем клиент Telegram
Начнем с импорта библиотек.
import configparser import json from telethon.sync import TelegramClient from telethon import connection # для корректного переноса времени сообщений в json from datetime import date, datetime # классы для работы с каналами from telethon.tl.functions.channels import GetParticipantsRequest from telethon.tl.types import ChannelParticipantsSearch # класс для работы с сообщениями from telethon.tl.functions.messages import GetHistoryRequest
Встроенные модули configparser и json применяем соответственно для чтения параметров и вывода данных. Из библиотеки Telethon импортируем класс клиента Telegram и класс исключений. Внутренний модуль connection необходим при использовании прокси-сервера. Остальные элементы модуля telethon.tl используются для запросов необходимых нам списков (участников канала/чата и их сообщений).
Теперь считаем учетные данные из config.ini :
# Считываем учетные данные config = configparser.ConfigParser() config.read(«config.ini») # Присваиваем значения внутренним переменным api_id = config[‘Telegram’][‘api_id’] api_hash = config[‘Telegram’][‘api_hash’] username = config[‘Telegram’][‘username’]
Создадим объект клиента Telegram API:
client = TelegramClient(username, api_id, api_hash)
При необходимости прописываем прокси. При использовании протокола MTProxy прокси задается в виде кортежа (сервер, порт, ключ) .
proxy = (proxy_server, proxy_port, proxy_key) client = TelegramClient(username, api_id, api_hash, connection=connection.ConnectionTcpMTProxyRandomizedIntermediate, proxy=proxy)
client.start()
При первом запуске платформа запросит номер телефона, и вслед – код подтверждения. Так же, как если бы вы входили в учетную запись в приложении или браузере.
Для сбора, обработки и сохранения информации мы создадим две функции:
- dump_all_participants(сhannel) заберет данные о пользователях администрируемого нами сообщества channel ;
- dump_all_messages(сhannel) соберет все сообщения. Для этой функции достаточно, чтобы у вас был доступ к сообществу (необязательно быть администратором).
Обе функции будут вызываться в теле функции main , в которой пользователь передаст ссылку на интересующий источник:
url = input(«Введите ссылку на канал или чат: «) channel = await client.get_entity(url)
Касательно написания вызова функций стоит оговориться, что Telethon является асинхронной библиотекой. Поэтому в коде используются операторы async и await. В связи с этим функция main полностью будет выглядеть так:
async def main(): url = input(«Введите ссылку на канал или чат: «) channel = await client.get_entity(url) await dump_all_participants(channel) await dump_all_messages(channel)
Заметим, что из-за асинхронности Telethon может некорректно работать в средах, использующих те же подходы (Anaconda, Spyder, Jupyter).
Рекомендуемым способом управления клиентом является менеджер контекстов with . Его мы запустим в конце скрипта после описания вложенных в main функций.
with client: client.loop.run_until_complete(main())
Собираем данные об участниках
Telegram не выводит все запрашиваемые данные за один раз, а выдает их в пакетном режиме, по 100 записей за каждый запрос.
async def dump_all_participants(channel): «»»Записывает json-файл с информацией о всех участниках канала/чата»»» offset_user = 0 # номер участника, с которого начинается считывание limit_user = 100 # максимальное число записей, передаваемых за один раз all_participants = [] # список всех участников канала filter_user = ChannelParticipantsSearch(») while True: participants = await client(GetParticipantsRequest(channel, filter_user, offset_user, limit_user, hash=0)) if not participants.users: break all_participants.extend(participants.users) offset_user += len(participants.users)
Устанавливаем ограничение в 100, начинаем со смещения 0, создаем список всех участников канала all_participants . Внутри бесконечного цикла передаем запрос GetParticipantsRequest .
Проверяем, есть ли у объекта participants свойство users . Если нет, выходим из цикла. В обратном случае добавляем новых членов в список all_participants , а длину полученного списка добавляем к смещению offset_user . Следующий запрос забирает пользователей, начиная с этого смещения. Цикл продолжается до тех пор, пока не соберет всех фолловеров канала.
Самый простой способ сохранить собранные данные в структурированном виде – воспользоваться форматом JSON. Базы данных, такие как MySQL, MongoDB и т. д., стоит рассматривать лишь для очень популярных каналов и большого количества сохраняемой информации. Либо если вы планируете такое расширение в будущем.
В JSON-файле можно хранить и всю информацию о каждом пользователе, но обычно достаточно лишь нескольких параметров. Покажем на примере, как ограничиться набором определенных данных:
all_users_details = [] # список словарей с интересующими параметрами участников канала for participant in all_participants: all_users_details.append() with open(‘channel_users.json’, ‘w’, encoding=’utf8′) as outfile: json.dump(all_users_details, outfile, ensure_ascii=False)
Итак, для каждого пользователя создается свой словарь данных и добавляется в общий список all_user_details , который записывается в JSON-файл.
Собираем сообщения
Ситуация со сбором сообщений идентична сбору сведений о пользователях. Отличия сводятся к трем пунктам:
- Вместо клиентского запроса GetParticipantsRequest необходимо отправить GetHistoryRequest со своим набором параметров. Так же, как и в случае со списком участников запрос ограничен сотней записей за один раз.
- Для списка сообщений важна их последовательность. Чтобы получать последние сообщения, нужно правильно задать смещение в GetHistoryRequest (с конца).
- Чтобы корректно сохранить данные о времени публикации сообщений в JSON-файле, нужно преобразовать формат времени.
import configparser import json from telethon.sync import TelegramClient from telethon import connection # для корректного переноса времени сообщений в json from datetime import date, datetime # классы для работы с каналами from telethon.tl.functions.channels import GetParticipantsRequest from telethon.tl.types import ChannelParticipantsSearch # класс для работы с сообщениями from telethon.tl.functions.messages import GetHistoryRequest # Считываем учетные данные config = configparser.ConfigParser() config.read(«config.ini») # Присваиваем значения внутренним переменным api_id = config[‘Telegram’][‘api_id’] api_hash = config[‘Telegram’][‘api_hash’] username = config[‘Telegram’][‘username’] proxy = (proxy_server, proxy_port, proxy_key) client = TelegramClient(username, api_id, api_hash, connection=connection.ConnectionTcpMTProxyRandomizedIntermediate, proxy=proxy) client.start() async def dump_all_participants(channel): «»»Записывает json-файл с информацией о всех участниках канала/чата»»» offset_user = 0 # номер участника, с которого начинается считывание limit_user = 100 # максимальное число записей, передаваемых за один раз all_participants = [] # список всех участников канала filter_user = ChannelParticipantsSearch(») while True: participants = await client(GetParticipantsRequest(channel, filter_user, offset_user, limit_user, hash=0)) if not participants.users: break all_participants.extend(participants.users) offset_user += len(participants.users) all_users_details = [] # список словарей с интересующими параметрами участников канала for participant in all_participants: all_users_details.append() with open(‘channel_users.json’, ‘w’, encoding=’utf8′) as outfile: json.dump(all_users_details, outfile, ensure_ascii=False) async def dump_all_messages(channel): «»»Записывает json-файл с информацией о всех сообщениях канала/чата»»» offset_msg = 0 # номер записи, с которой начинается считывание limit_msg = 100 # максимальное число записей, передаваемых за один раз all_messages = [] # список всех сообщений total_messages = 0 total_count_limit = 0 # поменяйте это значение, если вам нужны не все сообщения class DateTimeEncoder(json.JSONEncoder): »’Класс для сериализации записи дат в JSON»’ def default(self, o): if isinstance(o, datetime): return o.isoformat() if isinstance(o, bytes): return list(o) return json.JSONEncoder.default(self, o) while True: history = await client(GetHistoryRequest( peer=channel, offset_id=offset_msg, offset_date=None, add_offset=0, limit=limit_msg, max_id=0, min_id=0, hash=0)) if not history.messages: break messages = history.messages for message in messages: all_messages.append(message.to_dict()) offset_msg = messages[len(messages) — 1].id total_messages = len(all_messages) if total_count_limit != 0 and total_messages >= total_count_limit: break with open(‘channel_messages.json’, ‘w’, encoding=’utf8′) as outfile: json.dump(all_messages, outfile, ensure_ascii=False, cls=DateTimeEncoder) async def main(): url = input(«Введите ссылку на канал или чат: «) channel = await client.get_entity(url) await dump_all_participants(channel) await dump_all_messages(channel) with client: client.loop.run_until_complete(main())
Если для анализа сообщений потребуются не все записи, задайте их число в переменной total_count_limit . Если нужна только сборка сообщений канала, достаточно закомментировать вызов await dump_all_participants(channel) .
Таким образом, с помощью Python и Telethon мы написали скрипт, собирающий и сохраняющий данные и реплики участников сообществ Telegram.
Источник: proglib.io