Бот игнорирует команду с парсингом
Вот такая проблема, бот по плану должен присылать прогноз погоды на несколько дней вперед, но он игнорирует команду. Другие команды работают без ошибок, вот сам код
@bot.message_handler(content_types=['text'])
def weather(message):
if message.text.lower == '/weather':
url = 'https://pogoda.mail.ru/prognoz/bishkek/'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'lxml')
quotes = soup.find_all('div', class_='day day_index')
for quote in quotes:
bot.send_message(message.chat.id, ' '.join(q for q in quote.text.split()))
Проблема вроде как не в скобках, ибо если я убираю или добавляю скобки, то редактор ругается
Ответы (1 шт):
Автор решения: Tehnorobot
→ Ссылка
У вас ошибка в этой строке: if message.text.lower == '/weather':
Вы не вызвали метод строки lower. Должно быть так:
if message.text.lower() == '/weather':
Вывод в чате:
Завтра +32° +17° ясно 697 мм 18% 3 м/с 7 4%
Вс, 19/09 +31° +17° ясно 699 мм 23% 6 м/с 7 7%
Пн, 20/09 +26° +12° облачно 700 мм 24% 4 м/с 6 0%
Вт, 21/09 +26° +10° ясно 697 мм 17% 3 м/с 6 1%
Ср, 22/09 +26° +10° облачно 697 мм 17% 3 м/с 6 15%
Чт, 23/09 +26° +10° ясно 697 мм 17% 3 м/с 6 8%
Пт, 24/09 +25° +10° облачно 699 мм 15% 4 м/с 5 0%
Сб, 25/09 +28° +8° ясно 699 мм 13% 2 м/с 6 8%
Вс, 26/09 +30° +15° дождь 700 мм 15% 3 м/с 5 49%
Пн, 27/09 +23° +9° дождь 697 мм 26% 2 м/с 5 84%