При выходе выводит ответ:
{'BusNum': '29', 'Time': 'прибывает'}
{'BusNum': '10', 'Time': '2 мин'}
{'BusNum': '52', 'Time': '4 мин'}
А мне нужен ответ без этих фигурных скобок.
import telebot as tb
import requests as rq
from bs4 import BeautifulSoup as BS
URL = 'https://yandex.kz/maps/163/nur-sultan/stops/stop__10011009'
HEADERS = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36', 'accept': '*/*'}
def get_html(url, params=None):
r = rq.get(url, headers=HEADERS, params=params)
return r
def get_content(html):
soup = BS(html, 'html.parser')
items = soup.find_all('li', class_ = 'masstransit-vehicle-snippet-view _clickable _type_bus')
Bus = []
for item in items:
#number os bus
num = item.find('a', class_ = 'masstransit-vehicle-snippet-view__name')
if num:
num = num.get_text()
else:
num = 'Null'
#time for dom ministerstv
time = item.find('span', class_ = 'masstransit-prognoses-view__title-text')
if time:
time = time.get_text()
else:
time = item.find('span', class_ = 'masstransit-prognoses-view__every-value').get_text()
if time == 'келеді':
time = 'прибывает'
elif 'әр' in time:
temp = 'каждые ' + time[2:5] + 'мин'
time = temp
Bus.append({
#'BusNum': item.find('a', class_ = 'masstransit-vehicle-snippet-view__name')
'BusNum': num,
'Time': time,
})
return Bus
html = get_html(URL)
Buss = get_content(html.text)
bot = tb.TeleBot("token")
@bot.message_handler(commands=['start'])
def start(message):
bot.send_message(message.chat.id, '<b>Привет. Я бот, который может помочь тебе с расписанием автобусов</b>', parse_mode='html')
@bot.message_handler(commands=['bus'])
def businfo(message):
bot.send_message(message.chat.id, 'Информация о прибытии автобусов на остановку "Дом министреств"', parse_mode='html',)
bot.send_message(message.chat.id, '\n'.join(map(str, Buss)), parse_mode='text',)
bot.infinity_polling()