Не работает код python telegram

Рейтинг: 0Ответов: 0Опубликовано: 24.04.2023

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

import requests
from bs4 import BeautifulSoup
from telegram.ext import CommandHandler, Updater

def parse_kwork(category):
    url = f"https://kwork.ru/projects?categories={category}"
    response = requests.get(url)
    soup = BeautifulSoup(response.content, "html.parser")
    projects = soup.find_all("div", class_="card-proj")
    results = []
    for project in projects:
        title = project.find("a", class_="card-proj__title").text.strip()
        price = project.find("span", class_="card-proj__price").text.strip()
        description = project.find("div", class_="card-proj__desc").text.strip()
        results.append({"title": title, "price": price, "description": description})
    return results

def start(update, context):
    context.bot.send_message(chat_id=update.effective_chat.id, text="Привет! Я бот для поиска заданий на kwork.ru. Введите /parse и категорию заданий, чтобы начать поиск.")

def parse(update, context):
    category = context.args[0]
    results = parse_kwork(category)
    if results:
        for result in results:
            message = f"{result['title']}\nЦена: {result['price']}\nОписание: {result['description']}"
            context.bot.send_message(chat_id=update.effective_chat.id, text=message)
    else:
        context.bot.send_message(chat_id=update.effective_chat.id, text="К сожалению, заданий в выбранной категории не найдено.")

updater = Updater(token="YOUR_TOKEN", use_context=True)
dispatcher = updater.dispatcher
start_handler = CommandHandler("start", start)
parse_handler = CommandHandler("parse", parse)
dispatcher.add_handler(start_handler)
dispatcher.add_handler(parse_handler)
updater.start_polling()

Ответы

Ответов пока нет.