4

I installed telegram packages. But when I try to run the simple example, echobot.py, I got an error:

Traceback (most recent call last):
    File "echobot.py", line 8, in <module>
import telegram ImportError: No module named 'telegram'

Can anyone help me?

I install using git:

$ git clone https://github.com/python-telegram-bot/python-telegram-bot

after this:

$ python -i
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.

import telegram

Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
ImportError: No module named 'telegram'
phd
  • 82,685
  • 13
  • 120
  • 165
Mahyar
  • 57
  • 2
  • 4
  • 9

8 Answers8

11

You are not installing it. You are just downloading it.
Run these:

cd python-telegram-bot
python setup.py install

(stated in readme of the GitHub page)

Alternatively, you can use pip. It's easier to use.

pip install python-telegram-bot
cagri
  • 807
  • 8
  • 17
  • Thanks @Mehmet for the answer, but I try this: C:\Python27>pip install python-telegram-bot Requirement already satisfied: python-telegram-bot in c:\users\mahyar\appdata\local\programs\python\python35-32\lib\site-packages\python_telegram_bot-7.0.1-py3.5.egg Requirement already satisfied: future>=0.16.0 in c: – Mahyar Jul 30 '17 at 06:51
  • 1
    Maybe the problem is because of multiple versions of python! Any recommendation? – Mahyar Jul 30 '17 at 06:55
  • Can you try running commands with full path? e.g: C:\Python27\scripts\pip.exe install python-telegram-bot - pip is under scripts folder – cagri Jul 30 '17 at 09:46
  • I uninstalled other pythons, then use this: $ git clone https://github.com/python-telegram-bot/python-telegram-bot --recursive it means I added --recursive. Hopefully, it worked! Thanks @Mehmet for help, it was really helpful. – Mahyar Aug 01 '17 at 04:25
1

For my case, I solved it this way.enter image description here

pip install telegram
Md.Rakibuz Sultan
  • 759
  • 1
  • 8
  • 13
1

I noticed when I import telegram.ext, it does not find .ext. The issue was caused by telegram and python-telegram modules being installed. Delete these and install only python-telegram-bot. It should work.

Leon Liju
  • 11
  • 1
1

Try to uninstall it by pip uninstall python-telegram-bot

And after that install it again pip install python-telegram-bot

SwissCodeMen
  • 4,222
  • 8
  • 24
  • 34
Nothing
  • 36
  • 5
0

If you have named your python file as telegram.py then it will throw this error because the program is calling ext function from the file itself. Try renaming your python file to something else it will work.

0

In my case, I had two python versions installed. A quick solution is to idetify which python your code is using. Then go to bin directory where the python is installed. Find the pip binary name inside that using command

ls -lrt | grep pip

In my cases the name was pip3.6. So use then use that pip name and execute from same directory

pip3.6 install python-telegram-bot

Long term fix is to add your pip3.6 shortcut in /usr/bin or /usr/loca/bin and install packages using pip3.6 command

Ganesh S
  • 371
  • 6
  • 26
-1

Thre problem is in line with smth like

sys.path.append(os.path.join(os.path.abspath('.'), 'lib'))

in bot_gae.py.

You have to point at REAL place, where you've installed python-telegram-bot.

In my case it's ./lib in project directory.

wscourge
  • 10,657
  • 14
  • 59
  • 80
-3

Install

pip install django-telegrambot

Configure your installation

settings.py

INSTALLED_APPS = ( ... 'django_telegrambot', )