I’m getting this error whenever I use the command pip install telegram-bot in cmd:
C:Windowssystem32>pip install telegram-bot
Collecting telegram-bot
Using cached telegram-bot-0.1.tar.gz (51 kB)
ERROR: Command errored out with exit status 1:
command: 'c:program filespython39python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\miclo\AppData\Local\Temp\pip-install-j1l7uwqx\telegram-bot_a7d2b1d51c264e718c85210726554603\setup.py'"'"'; __file__='"'"'C:\Users\miclo\AppData\Local\Temp\pip-install-j1l7uwqx\telegram-bot_a7d2b1d51c264e718c85210726554603\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:UsersmicloAppDataLocalTemppip-pip-egg-info-4qf8pb7l'
cwd: C:UsersmicloAppDataLocalTemppip-install-j1l7uwqxtelegram-bot_a7d2b1d51c264e718c85210726554603
Complete output (7 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:UsersmicloAppDataLocalTemppip-install-j1l7uwqxtelegram-bot_a7d2b1d51c264e718c85210726554603setup.py", line 12, in <module>
import telegram
File "C:UsersmicloAppDataLocalTemppip-install-j1l7uwqxtelegram-bot_a7d2b1d51c264e718c85210726554603telegram__init__.py", line 15, in <module>
from telegram import Bot, ChatActions
ImportError: cannot import name 'Bot' from partially initialized module 'telegram' (most likely due to a circular import) (C:UsersmicloAppDataLocalTemppip-install-j1l7uwqxtelegram-bot_a7d2b1d51c264e718c85210726554603telegram__init__.py)
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
I have installed the latest version of Python and upgraded pip, but nothing changed. I use Pycharm as IDE. When I try to install this module from Pycharm, I get the same error:
Collecting telegram-bot
Using cached telegram-bot-0.1.tar.gz (51 kB)
DEPRECATION: The -b/--build/--build-dir/--build-directory option is deprecated and has no effect anymore. pip 21.1 will remove support for this functionality. A possible replacement is use the TMPDIR/TEMP/TMP environment variable, possibly combined with --no-clean. You can find discussion regarding this at https://github.com/pypa/pip/issues/8333.
ERROR: Command errored out with exit status 1:
command: 'D:DevelopmenttelegramvenvScriptspython.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\miclo\AppData\Local\Temp\pip-install-60osryel\telegram-bot_02585524af70443f98a2a69b3da7ae38\setup.py'"'"'; __file__='"'"'C:\Users\miclo\AppData\Local\Temp\pip-install-60osryel\telegram-bot_02585524af70443f98a2a69b3da7ae38\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'rn'"'"', '"'"'n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:UsersmicloAppDataLocalTemppip-pip-egg-info-0ihid_ld'
cwd: C:UsersmicloAppDataLocalTemppip-install-60osryeltelegram-bot_02585524af70443f98a2a69b3da7ae38
Complete output (7 lines):
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:UsersmicloAppDataLocalTemppip-install-60osryeltelegram-bot_02585524af70443f98a2a69b3da7ae38setup.py", line 12, in <module>
import telegram
File "C:UsersmicloAppDataLocalTemppip-install-60osryeltelegram-bot_02585524af70443f98a2a69b3da7ae38telegram__init__.py", line 15, in <module>
from telegram import Bot, ChatActions
ImportError: cannot import name 'Bot' from partially initialized module 'telegram' (most likely due to a circular import) (C:UsersmicloAppDataLocalTemppip-install-60osryeltelegram-bot_02585524af70443f98a2a69b3da7ae38telegram__init__.py)
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
I’m trying to build a telegram bot and host it with Heroku. When typing heroku logs -t in cmd, I get something similar:
2020-12-04T20:24:35.852594+00:00 app[web.1]: File "main.py", line 5, in <module>
2020-12-04T20:24:35.852826+00:00 app[web.1]: from telegram.ext import CommandHandler, MessageHandler, Filters, Updater
2020-12-04T20:24:35.852831+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/telegram/ext/__init__.py", line 21, in <module>
2020-12-04T20:24:35.853028+00:00 app[web.1]: from .basepersistence import BasePersistence
2020-12-04T20:24:35.853033+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.6/site-packages/telegram/ext/basepersistence.py", line 25, in <module>
2020-12-04T20:24:35.853242+00:00 app[web.1]: from telegram import Bot
2020-12-04T20:24:35.853243+00:00 app[web.1]: ImportError: cannot import name 'Bot'
These are my imports:
import os
import telebot
import xlrd
from flask import Flask, request
from telegram.ext import CommandHandler, MessageHandler, Filters, Updater
2
Answers
Reason – wrong library
pip install telegram-bot
Telebot
You can wanna use Telebot, you should install
pyTelegramBotAPI
instead.aiogram
Also I recommend to try modern and popular framework:
aiogram
Try
pip install python-telegram-bot