Заказчик
Отзывы фрилансеров:
+ 0
- 0
Зарегистрирован на сайте меньше месяца
Бюджет:
1000 руб
12.83 $ — 10.97 €
Просто говорить мне пошагаво что делать, потому что сам не разберусь.
Вот уже готовый скрипт:
🧠 Шаг 2. Что делает бот?
Он будет выполнять:
Приём файлов (Excel, PDF, JPG, PNG).
Сохранение этих файлов на сервере.
Передачу их ChatGPT на анализ.
Ответ с рекомендациями (на основе анализа данных).
💻 Шаг 3. Установи и настрой сервер
Ты можешь использовать:
Локальный компьютер (для теста),
VPS (например, через DigitalOcean, Bacloud),
Или хостинг вроде PythonAnywhere.
1. Установи Python:
sudo apt update
sudo apt install python3 python3-pip -y
2. Создай проект:
mkdir ~/telegram_health_bot
cd ~/telegram_health_bot
python3 -m venv venv
source venv/bin/activate
3. Установи зависимости:
pip install python-telegram-bot openai python-dotenv
📄 Шаг 4. Напиши скрипт бота
Создай файл .env:
BOT_TOKEN=токен_от_BotFather
OPENAI_API_KEY=твой_OpenAI_ключ
Создай файл bot.py:
import os
import openai
from telegram import Update
from telegram.ext import ApplicationBuilder, MessageHandler, CommandHandler, ContextTypes, filters
from dotenv import load_dotenv
load_dotenv()
BOT_TOKEN = os.getenv("BOT_TOKEN")
openai.api_key = os.getenv("OPENAI_API_KEY")
SAVE_PATH = "files"
os.makedirs(SAVE_PATH, exist_ok=True)
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
await update.message.reply_text("👋 Привет! Пришли мне файл с анализом, и я его проанализирую.")
async def handle_file(update: Update, context: ContextTypes.DEFAULT_TYPE):
doc = update.message.document
file = await doc.get_file()
file_path = os.path.join(SAVE_PATH, doc.file_name)
await file.download_to_drive(file_path)
await update.message.reply_text("📥 Файл получен. Анализирую...")
if file_path.lower().endswith((".txt", ".csv", ".xlsx")):
with open(file_path, "rb") as f:
content = f.read()
# ТОЛЬКО для .txt/.csv файлов — можно отправить текст напрямую
if file_path.endswith(".txt"):
text = content.decode("utf-8")
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[{"role": "user", "content": f"Анализируй результаты анализа:\n{text}"}]
)
await update.message.reply_text(response.choices[0].message.content)
else:
await update.message.reply_text("📄 Формат файла принят. Для глубокого анализа загрузи текстовые файлы (txt). PDF/Excel/изображения пока не поддерживаются напрямую.")
else:
await update.message.reply_text("❗ Сейчас поддерживаются только текстовые форматы (txt, csv, xlsx).")
app = ApplicationBuilder().token(BOT_TOKEN).build()
app.add_handler(CommandHandler("start", start))
app.add_handler(MessageHandler(filters.Document.ALL, handle_file))
app.run_polling()
🤖 Шаг 5. Запусти бота
source venv/bin/activate
python bot.py
Отправь /start своему боту и загрузку анализа — он должен принять и начать обрабатывать.
🧠 Что дальше?
🔹 Можно добавить:
Распознавание изображений анализов через OCR.
Загрузку PDF-файлов с конвертацией в текст.
Хранение всех данных в Google Sheets.
Отправку графиков (через Matplotlib).
Разделы:
Опубликован:
27.06.2025 | 14:57 [поднят: 27.06.2025 | 14:57] [последние изменения: 27.06.2025 | 19:55]
Заказ находится в архиве