0 / 0 / 0
Регистрация: 03.04.2020
Сообщений: 1

Создание телеграмм бота на python с использованием telegrambotapi

03.04.2020, 10:27. Показов 1445. Ответов 0

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import telebot
from telebot import types
import COVID19Py
 
covid19 = COVID19Py.COVID19()
bot = telebot.TeleBot('1246095027:AAEQIF5Jujg02NftmL-1tiQgof1MUXoxgX8')
 
# Функция, что сработает при отправке команды Старт
# Здесь мы создаем быстрые кнопки, а также сообщение с привествием
@bot.message_handler(commands=['start'])
def start(message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)
    btn1 = types.KeyboardButton('Во всём мире')
    btn2 = types.KeyboardButton('Украина')
    btn3 = types.KeyboardButton('Россия')
    btn4 = types.KeyboardButton('Беларусь')
    markup.add(btn1, btn2, btn3, btn4)
 
    send_message = f"<b>Привет {message.from_user.first_name}!</b>\nЧтобы узнать информацию о covid-19\n\nНапишите " \
        f"название страны, например: США, Украина, Россия и так далее"
    bot.send_message(message.chat.id, send_message, parse_mode='html', reply_markup=markup)
 
# Функция, что сработает при отправке какого-либо текста боту
# Здесь мы создаем отслеживания данных и вывод статистики по определенной стране
@bot.message_handler(content_types=['text'])
def mess(message):
    final_message = ""
    get_message_bot = message.text.strip().lower()
    if get_message_bot == "сша":
        location = covid19.getLocationByCountryCode("US")
    elif get_message_bot == "украина":
        location = covid19.getLocationByCountryCode("UA")
    elif get_message_bot == "россия":
        location = covid19.getLocationByCountryCode("RU")
    elif get_message_bot == "беларусь":
        location = covid19.getLocationByCountryCode("BY")
    elif get_message_bot == "казакхстан":
        location = covid19.getLocationByCountryCode("KZ")
    elif get_message_bot == "италия":
        location = covid19.getLocationByCountryCode("IT")
    elif get_message_bot == "франция":
        location = covid19.getLocationByCountryCode("FR")
    elif get_message_bot == "германия":
        location = covid19.getLocationByCountryCode("DE")
    elif get_message_bot == "япония":
        location = covid19.getLocationByCountryCode("JP")
    else:
        location = covid19.getLatest()
    final_message = f"<u>Данные по всему миру:</u>\n<b>Заболевших: </b>{location['confirmed']:,}\n<b>Сметрей: </b>{location['deaths']:,}"
 
    if final_message == "":
        date = location[0]['last_updated'].split("T")
        time = date[1].split(".")
        final_message = f"<u>Данные по стране:</u>\nНаселение: {location[0]['country_population']:,}\n" \
                f"Последнее обновление: {date[0]} {time[0]}\nПоследние данные:\n<b>" \
                f"Заболевших: </b>{location[0]['latest']['confirmed']:,}\n<b>Сметрей: </b>" \
                f"{location[0]['latest']['deaths']:,}"
 
    bot.send_message(message.chat.id, final_message, parse_mode='html')
 
# Это нужно чтобы бот работал всё время
bot.polling(none_stop=True)

Выдаёт ошибку:
[Running] python -u "d:\Games\coronavirusbot.py"
2020-04-03 10:17:24,387 (util.py:66 WorkerThread2) ERROR - TeleBot: "TypeError occurred, args=('get() takes 1 positional argument but 2 were given',)
Traceback (most recent call last):
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\telebot\util.py", line 60, in run
task(*args, **kwargs)
File "d:\Games\coronavirusbot.py", line 48, in mess
location = covid19.getLatest()
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\COVID19Py\covid19.py", line 65, in getLatest
data = self._request("/v2/latest")
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\COVID19Py\covid19.py", line 37, in _request
response = requests.get(self.url + endpoint, {**params, "source":self.data_source})
TypeError: get() takes 1 positional argument but 2 were given
"
Traceback (most recent call last):
File "d:\Games\coronavirusbot.py", line 62, in <module>
bot.polling(none_stop=True)
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\telebot\__init__.py", line 392, in polling
self.__threaded_polling(none_stop, interval, timeout)
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\telebot\__init__.py", line 416, in __threaded_polling
self.worker_pool.raise_exceptions()
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\telebot\util.py", line 109, in raise_exceptions
six.reraise(self.exc_info[0], self.exc_info[1], self.exc_info[2])
File "C:\Users\�������\AppData\Roaming\Python \Python38\site-packages\six.py", line 703, in reraise
raise value
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\telebot\util.py", line 60, in run
task(*args, **kwargs)
File "d:\Games\coronavirusbot.py", line 48, in mess
location = covid19.getLatest()
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\COVID19Py\covid19.py", line 65, in getLatest
data = self._request("/v2/latest")
File "C:\Users\�������\AppData\Local\Programs \Python\Python38-32\lib\site-packages\COVID19Py\covid19.py", line 37, in _request
response = requests.get(self.url + endpoint, {**params, "source":self.data_source})
TypeError: get() takes 1 positional argument but 2 were given

[Done] exited with code=1 in 9.351 seconds
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.04.2020, 10:27
Ответы с готовыми решениями:

Функции Телеграмм бота на python
Помогите пожалуйста, на одном из этапов требуется выполнить либо одну либо другую функцию. с первой справляется отлично. а вот со второй ее...

Функция для телеграмм бота на python
Здравствуйте, делаю телеграм бота на python, библиотека telebot. Сейчас вкратце объясню его суть. Сам бот предназначен для продажи битов...

Создание телеграмм бота
Помогите создать функцию которая будет выводить каждое второе слово предложение задом наперед.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.04.2020, 10:27
Помогаю со студенческими работами здесь

Как сделать фильтр мата для телеграмм-бота на Python?
помогите пожалуйста сделать фильтр мата для моего телеграмм-бота. суть в том, чтобы сделать так, чтобы: если пользователь введёт в...

Создание телеграмм бота на языке пайтон
Здравствуйте! Подскажите, пожалуйста, почему не работает бот. Уже всё перепробовала, бот застревает на моменте, когда надо вводить...

Создание телеграмм бота на языке пайтон
Здравствуйте! У меня есть два кода для телеграмм бота. Первый переводит число из десятичной системы счисления в любую другую. Второй...

Создание кнопок для телеграмм бота
Добрый день. Помогите пожалуйста. Пишу бота, хочу добавить 2 кнопки на ответ, сделала по примеру, перепробовала кучу вариантов, но...

Создание телеграмм бота на языке пайтон
Здравствуйте! Я недавно начала изучать пайтон и не очень хорошо в нём разбираюсь. Помогите, пожалуйста, написать код пайтон для телеграмм...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru