برای ارسال درخواست به API تلگرام با استفاده از کتابخانه requests، با توجه به فیلتر بودن تلگرام، باید از یک پراکسی (مثل HTTP، SOCKS5 یا VPN) استفاده کنید. در زیر نحوه انجام این کار را توضیح میدهم:
مراحل اتصال به API تلگرام:
1. ایجاد توکن ربات:
از طریق BotFather یک ربات ایجاد کنید و توکن مربوطه را دریافت کنید.
2. نصب کتابخانههای مورد نیاز: اگر کتابخانه requests[socks] برای پشتیبانی از پراکسی SOCKS نصب نشده است، دستور زیر را اجرا کنید:
pip install requests[socks]
3. پیکربندی پراکسی: از یک پراکسی معتبر استفاده کنید. پراکسی میتواند در قالب HTTP یا SOCKS5 باشد.
4. ارسال درخواست به API تلگرام: در کد زیر، روش ارسال درخواست به همراه تنظیم پراکسی نمایش داده شده است:
import requests
# اطلاعات اولیه
bot_token = "YOUR_BOT_TOKEN"
api_url = f"
https://api.telegram.org/bot{bot_token}/getMe"
# تنظیم پراکسی
proxies = {
"http": "
http://username:password@proxy_ip:proxy_port", # برای پراکسی HTTP
"https": "
http://username:password@proxy_ip:proxy_port",
# اگر از پراکسی SOCKS5 استفاده میکنید:
# "http": "socks5h://username:password@proxy_ip:proxy_port",
# "https": "socks5h://username:password@proxy_ip:proxy_port",
}
# ارسال درخواست
try:
response = requests.get(api_url, proxies=proxies, timeout=10)
if response.status_code == 200:
print("Response:", response.json())
else:
print(f"Error: {response.status_code}")
except requests.exceptions.RequestException as e:
print(f"Request failed: {e}")
توضیحات کد:
1. bot_token: توکنی که از BotFather دریافت کردهاید را وارد کنید.
2. proxies:
آدرس پراکسی و در صورت نیاز، نام کاربری و رمز عبور آن را وارد کنید.
اگر پراکسی شما نیاز به احراز هویت ندارد، بخش username:password@ را حذف کنید.
3. timeout: مقدار زمان انتظار برای پاسخگویی سرور.
4. بررسی پاسخ: در صورت موفقیتآمیز بودن درخواست، پاسخ JSON از تلگرام دریافت خواهد شد.
نکات مهم:
استفاده از SOCKS5 برای پراکسی در تلگرام معمولاً پایدارتر از HTTP است.
اطمینان حاصل کنید که پراکسی شما فعال و به درستی تنظیم شده است.
برای امنیت بیشتر، از پراکسی رمزگذاریشده استفاده کنید.
اگر نیاز به توضیحات بیشتری دارید، اطلاع دهید!