- 15
- 4
Написал простой чекер, поддерживает файлы.
Для работы -
Для работы -
pip install telebot
001:
import telebot
import requests
import os
from telebot.types import InlineKeyboardMarkup, InlineKeyboardButton
TOKEN = '123000'
bot = telebot.TeleBot(TOKEN)
def check_proxy(proxy):
proxies = {"http": proxy, "https": proxy}
try:
response = requests.get("http://www.google.com", proxies=proxies, timeout=5)
if response.status_code == 200:
return True
except:
return False
return False
@bot.message_handler(commands=['start'])
def start(message):
markup = InlineKeyboardMarkup()
button = InlineKeyboardButton("🕵️♂️ Администратор 🕵️♂️", url="сюда ссылку на свой тг")
markup.add(button)
bot.send_sticker(message.chat.id, "CAACAgIAAxkBAAEpOn1m2z_xoaaD31TnGw9lR7pHrgO0qgACzhEAApNDiUuJDs1kh0AuUjYE")
bot.send_message(message.chat.id,
"👋 *Привет!* Я бот для проверки валидности прокси.\n\n📋 Отправь мне список прокси в текстовом виде или загрузи файл, и я проверю их.\n\n📝 Пример формата:\n- 123.456.789.000:8080\n- user:pass@123.456.789.000:8080",
parse_mode="Markdown", reply_markup=markup)
@bot.message_handler(content_types=['text'])
def handle_text(message):
proxies = message.text.splitlines()
valid_proxies = []
invalid_proxies = []
for proxy in proxies:
if check_proxy(proxy):
valid_proxies.append(proxy)
else:
invalid_proxies.append(proxy)
total = len(proxies)
valid_count = len(valid_proxies)
invalid_count = total - valid_count
result_message = f"🔍 Проверено прокси: {total}\n" \
f"✅ Валидные: {valid_count}\n" \
f"❌ Невалидные: {invalid_count}\n\n"
if valid_proxies:
result_message += "*Список валидных прокси:*\n" + "\n".join([f"🔹 `{proxy}`" for proxy in valid_proxies])
else:
result_message += "❌ Нет валидных прокси."
bot.send_message(message.chat.id, result_message, parse_mode="Markdown")
@bot.message_handler(content_types=['document'])
def handle_document(message):
file_info = bot.get_file(message.document.file_id)
downloaded_file = bot.download_file(file_info.file_path)
with open(message.document.file_name, 'wb') as new_file:
new_file.write(downloaded_file)
with open(message.document.file_name, 'r') as file:
proxies = file.readlines()
os.remove(message.document.file_name)
valid_proxies = []
invalid_proxies = []
for proxy in proxies:
proxy = proxy.strip()
if check_proxy(proxy):
valid_proxies.append(proxy)
else:
invalid_proxies.append(proxy)
total = len(proxies)
valid_count = len(valid_proxies)
invalid_count = total - valid_count
result_message = f"🔍 Проверено прокси из файла: {total}\n" \
f"✅ Валидные: {valid_count}\n" \
f"❌ Невалидные: {invalid_count}\n\n"
if valid_proxies:
result_message += "*Список валидных прокси:*\n" + "\n".join([f"🔹 `{proxy}`" for proxy in valid_proxies])
else:
result_message += "❌ Нет валидных прокси в файле."
bot.send_message(message.chat.id, result_message, parse_mode="Markdown")
bot.polling(none_stop=True)