Приложение
Как установить приложение на iOS

Смотрите видео ниже, чтобы узнать, как установить iTnull.info в качестве веб-приложения.

Примечание: Эта функция может быть недоступна в некоторых браузерах.

Другое Бот для временных почт на Python

    Nobody is reading this thread right now.
  • Друг форума
  • Программист
  • Автор темы
  • Администратор
  • Модератор
  • Команда форума
  • #1 из 1
Для работы нужно: pip install telebot
Код:
Расширить Свернуть Скопировать
import telebot
import requests
import json
import time
import html

TOKEN = 'сюда свой токен'
bot = telebot.TeleBot(TOKEN)

user_emails = {}
user_last_message_id = {}

def get_temp_email():
    url = 'https://www.1secmail.com/api/v1/?action=genRandomMailbox&count=1'
    response = requests.get(url)
    if response.status_code == 200:
        email = json.loads(response.text)[0]
        return email
    return None

def check_email_inbox(email):
    login, domain = email.split('@')
    url = f'https://www.1secmail.com/api/v1/?action=getMessages&login={login}&domain={domain}'
    response = requests.get(url)
    if response.status_code == 200:
        messages = json.loads(response.text)
        return messages
    return []

def get_message_content(email, message_id):
    login, domain = email.split('@')
    url = f'https://www.1secmail.com/api/v1/?action=readMessage&login={login}&domain={domain}&id={message_id}'
    response = requests.get(url)
    if response.status_code == 200:
        message = json.loads(response.text)
        return message
    return None

@bot.message_handler(commands=['start'])
def start_message(message):
    bot.send_sticker(message.chat.id, 'CAACAgEAAxkBAAEpLcxm2dW5AS4WVB8PTRVshB2g1KNC5QACLQEAAjgOghHg_AlwrsI5zzYE')

    welcome_text = (
        "? <b>Добро пожаловать!</b>\n"
        "? <i>Этот бот поможет вам получить временную почту</i>.\n"
        "? Для начала использования нажмите на кнопку ниже ?"
    )
   
    email = get_temp_email()
    if email:
        user_emails[message.chat.id] = email
        user_last_message_id[message.chat.id] = None
       
        markup = telebot.types.InlineKeyboardMarkup()
        btn_change = telebot.types.InlineKeyboardButton(text="? Сменить почту", callback_data="change_email")
        btn_info = telebot.types.InlineKeyboardButton(text="⚜ Информация", callback_data="info")
        markup.add(btn_change, btn_info)
       
        bot.send_message(
            message.chat.id,
            welcome_text,
            parse_mode='HTML',
            reply_markup=markup
        )
       
        email_message = f"? <b>Ваша временная почта:</b> <code>{email}</code>\n\n"
        bot.send_message(message.chat.id, email_message, parse_mode='HTML')
    else:
        bot.send_message(message.chat.id, "❗ <b>Ошибка при получении почты</b>.", parse_mode='HTML')

@bot.callback_query_handler(func=lambda call: True)
def callback_query(call):
    if call.data == "change_email":
        new_email = get_temp_email()
        if new_email:
            user_emails[call.message.chat.id] = new_email
            user_last_message_id[call.message.chat.id] = None
            bot.send_message(call.message.chat.id, f"? <b>Ваша новая временная почта:</b> <code>{new_email}</code>", parse_mode='HTML')
        else:
            bot.send_message(call.message.chat.id, "❗ <b>Ошибка при смене почты</b>.", parse_mode='HTML')
    elif call.data == "info":
        info_message = (
            "⚜ <b>Информация о боте</b>:\n"
            "Вы можете использовать его для быстрого получения почты, без необходимости регистрироваться на сайтах."
            "Данный бот полностью бесплатный, если вы хотите получать письма моментально то советуем оплатить подписку - 39₽"
        )
        bot.send_message(call.message.chat.id, info_message, parse_mode='HTML')

def check_for_new_emails():
    while True:
        for chat_id, email in user_emails.items():
            messages = check_email_inbox(email)
            if messages:
                last_message = messages[0]
                last_message_id = last_message['id']
               
                if user_last_message_id.get(chat_id) != last_message_id:
                    user_last_message_id[chat_id] = last_message_id
                    message_content = get_message_content(email, last_message_id)
                   
                    email_from = html.escape(message_content['from'])
                    email_subject = html.escape(message_content['subject'])
                    email_body = html.escape(message_content['textBody'])
                   
                    notification = (
                        f"? <b>Новое письмо на почту:</b> <code>{email}</code>\n"
                        f"? <b>От кого:</b> {email_from}\n"
                        f"? <b>Тема:</b> {email_subject}\n\n"
                        f"? <b>Содержание:</b>\n{email_body}"
                    )
                   
                    bot.send_message(chat_id, notification, parse_mode='HTML')
       
        time.sleep(5)  # Проверка почты (минимум 5 сек)


import threading
email_check_thread = threading.Thread(target=check_for_new_emails)
email_check_thread.start()

bot.polling(none_stop=True)

Скачать: Посмотреть вложение main.py
 

Создайте аккаунт или войдите, чтобы комментировать

Вы должны быть участником, чтобы оставлять комментарии

Зарегистрироваться

Создайте учетную запись. Это просто!

Авторизация

Уже есть аккаунт? Авторизуйтесь.

Похожие темы

Ответы
0
Просмотры
3K
Ответы
0
Просмотры
2K
Что если сообщения с сайта будут приходить не только на ваш e-mail, но и моментально в...
Ответы
0
Просмотры
4K
Назад
Сверху Снизу