Python
- 3 ответа
- 0 вопросов
2
Вклад в тег
from aiogram.dispatcher.filters.state import State, StatesGroup
class Mydialog(StatesGroup):
otvet = State() # Will be represented in storage as 'Mydialog:otvet'
#Здесь мы начинаем общение с клиентом и включаем состояния
@dp.message_handler()
async def cmd_dialog(message: types.Message):
await Mydialog.otvet.set() # вот мы указали начало работы состояний (states)
await message.reply("Человечишка, напиши мне свое жалкое мнение")
# А здесь получаем ответ, указывая состояние и передавая сообщение пользователя
@dp.message_handler(state=Mydialog.otvet)
async def process_message(message: types.Message, state: FSMContext):
async with state.proxy() as data:
data['text'] = message.text
user_message = data['text']
# дальше ты обрабатываешь сообщение, ведешь рассчеты и выдаешь ему ответ.
otvet_klienty = 'bla, bla, bla'
await bot.send_message(
message.from_user.id,
otvet_klienty ,
reply_markup=markup,
parse_mode='HTML',
)
# Finish conversation
await state.finish() # закончили работать с сотояниями
import requests
from bs4 import BeautifulSoup
url = 'https://www.nhc.noaa.gov/cyclones/'
r = requests.get(url)
html = BeautifulSoup(r.content, 'html.parser')
cyclones_section = html.find("div", id="cyclones_stormTable") # это секция, где идут перечисления активных циклонов
cyclones_results = cyclones_section.select("table > tr:nth-of-type(3) > td > table > tr > td:nth-of-type(1)") # так выглядит поиск нужного куска кода в HTML