آلا
6 روز پیش توسط آلا مطرح شد
1 پاسخ

مشکل اتصال اینترنت در پایتون در وصل توکن در زمان اجرای کد پایتون 3

import telebot
from telebot import types
import logging

تنظیمات لاگ‌ها

logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO
)
logger = logging.getLogger(name)

توکن ربات

BOT_TOKEN = "7128698085:AAHetnhGDrIPFaem-rxQ7IfBpVmE-SI1e_c" # این را با توکن خود جایگزین کنید

پیام های ربات

WELCOME_MESSAGE = "خوش آمدی!"
HELP_MESSAGE = "من یک ربات ساده هستم. با دستور /start سلام کن و هر متنی بفرستی تکرار می‌کنم."
UNKNOWN_COMMAND_MESSAGE = "متوجه نشدم، دستور /help را امتحان کنید."

bot = telebot.TeleBot(BOT_TOKEN)

دستور /start

@bot.message_handler(commands=['start'])
def send_welcome(message):
keyboard = types.ReplyKeyboardMarkup(one_time_keyboard=True, resize_keyboard=True)
keyboard.add(types.KeyboardButton('/help'))
bot.reply_to(message, WELCOME_MESSAGE, reply_markup=keyboard)

دستور /help

@bot.message_handler(commands=['help'])
def send_help(message):
bot.reply_to(message, HELP_MESSAGE)

مدیریت خطای سراسری

@bot.message_handler(func=lambda message: True)
def unknown_command(message):
bot.reply_to(message, UNKNOWN_COMMAND_MESSAGE)

مدیریت خطاها

def error_handler(e):
logger.error(f"Error: {e}")

if name == 'main':
try:
bot.polling()
except Exception as e:
error_handler(e)
import telebot
from telebot import types
import logging

تنظیمات لاگ‌ها

logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO
)
logger = logging.getLogger(name)

توکن ربات

BOT_TOKEN = "7128698085:AAHetnhGDrIPFaem-rxQ7IfBpVmE-SI1e_c" # این را با توکن خود جایگزین کنید

پیام های ربات

WELCOME_MESSAGE = "خوش آمدی!"
HELP_MESSAGE = "من یک ربات ساده هستم. با دستور /start سلام کن و هر متنی بفرستی تکرار می‌کنم."
UNKNOWN_COMMAND_MESSAGE = "متوجه نشدم، دستور /help را امتحان کنید."

bot = telebot.TeleBot(BOT_TOKEN)

دستور /start

@bot.message_handler(commands=['start'])
def send_welcome(message):
keyboard = types.ReplyKeyboardMarkup(one_time_keyboard=True, resize_keyboard=True)
keyboard.add(types.KeyboardButton('/help'))
bot.reply_to(message, WELCOME_MESSAGE, reply_markup=keyboard)

دستور /help

@bot.message_handler(commands=['help'])
def send_help(message):
bot.reply_to(message, HELP_MESSAGE)

مدیریت خطای سراسری

@bot.message_handler(func=lambda message: True)
def unknown_command(message):
bot.reply_to(message, UNKNOWN_COMMAND_MESSAGE)

مدیریت خطاها

def error_handler(e):
logger.error(f"Error: {e}")

if name == 'main':
try:
bot.polling()
except Exception as e:
error_handler(e)
// ...
JsonElement responseJson = ...; // مقدار JSON دریافتی

if (responseJson.isJsonObject()) {
JsonObject responseJsonObject = responseJson.getAsJsonObject();
// ... ادامه پردازش با JsonObject
JsonElement statusElement = responseJsonObject.get("status");
if (statusElement.isJsonPrimitive() && statusElement.getAsJsonPrimitive().isString()){
String status = statusElement.getAsString();
if (status.equals("success")) {
JsonElement messageElement = responseJsonObject.get("message");
if (messageElement.isJsonPrimitive() && messageElement.getAsJsonPrimitive().isString()){
String message = messageElement.getAsString();
// ... استفاده از پیام
}

    } else if (status.equals("error")){
        JsonElement errorCodeElement = responseJsonObject.get("error_code");
          if (errorCodeElement.isJsonPrimitive() && errorCodeElement.getAsJsonPrimitive().isNumber()){
            Number errorCode = errorCodeElement.getAsNumber();
             // ... استفاده از کد خطا
        }
      }
}

این کد
وقتی اجرا کنم اتصال اینترنت میزن خط رو
هر کاری میکنم درست نیست
کد اتصال اینترنت هم برای پایتون زدم که نوشته وصل


ثبت پرسش جدید
Amin
تخصص : ساخت ربات php
@Hephaestus 1 ساعت پیش مطرح شد
0

سلام آلا جان 😊

برای اینکه بتونم به مشکل شما در مورد اتصال اینترنت در کد پایتون و وصل نشدن توکن ربات تلگرام کمک کنم، چند تا سوال دارم تا مطمئن بشم مشکل دقیقاً چیه و بتونم یک راه‌حل کامل و جامع ارائه بدم. لطفاً به سوالات زیر پاسخ بدید:


  1. **اینترنت شما به درستی کار می‌کند؟
    • آیا می‌تونید وب‌سایت‌های دیگه (مثل Google) رو در مرورگر خود باز کنید؟
    • اگر از *** یا پروکسی استفاده می‌کنید، آیا تنظیمات آن به درستی انجام شده است؟

  1. توکن ربات شما معتبر است؟
    • آیا توکنی که استفاده می‌کنید رو از @BotFather دریافت کردید؟
    • آیا مطمئن هستید که توکن رو درست کپی کردید و هیچ فاصله یا کاراکتر اضافی در آن وجود ندارد؟

  1. کتابخانه pyTelegramBotAPI نصب شده است؟
    • آیا کتابخانه رو با دستور pip install pyTelegramBotAPI نصب کردید؟
    • اگر نه، لطفاً آن را نصب کنید و دوباره امتحان کنید.

  1. کد شما خطای سینتکسی دارد؟
    • آیا مطمئن هستید که کد شما بدون خطا است؟ مثلاً:
      • if __name__ == '__main__': به درستی نوشته شده است؟
      • و اینکه logger = logging.getLogger(__name__) به درستی تعریف شده است؟
    • اگر نه، لطفاً کد خود را دوباره بررسی کنید.

  1. آیا فایروال یا آنتی‌ویروس شما مانع اتصال نمی‌شود؟
    • آیا فایروال یا آنتی‌ویروس شما اجازه دسترسی به اینترنت رو به پایتون داده است؟
    • اگر نه، لطفاً آن را بررسی کنید و پایتون را به لیست برنامه‌های مجاز اضافه کنید.

  1. آیا از bot.polling() به درستی استفاده کردید؟
    • آیا bot.polling() در بلوک try-except قرار دارد تا خطاهای احتمالی مدیریت شوند؟
    • اگر نه، لطفاً کد خود را به این شکل تغییر دهید:
      try:
       bot.polling()
      except Exception as e:
       logger.error(f"Error: {e}")

  1. آیا از یک شبکه محدود شده استفاده می‌کنید؟
    • آیا شبکه اینترنت شما (مثلاً در محل کار یا دانشگاه) دسترسی به تلگرام را محدود کرده است؟
    • اگر بله، ممکن است نیاز به استفاده از *** داشته باشید.

  1. آیا خطای خاصی در خروجی ترمینال مشاهده می‌کنید؟
    • اگر خطایی در ترمینال نمایش داده می‌شود، لطفاً آن را کاملاً کپی کنید و ارسال کنید تا بررسی کنم.

  1. آیا از نسخه‌های قدیمی کتابخانه‌ها استفاده می‌کنید؟
    • آیا مطمئن هستید که از آخرین نسخه pyTelegramBotAPI استفاده می‌کنید؟
    • می‌تونید با دستور زیر کتابخانه‌ها رو آپدیت کنید:
pip install --upgrade pyTelegramBotAPI

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام