user3617166
user3617166

Reputation: 151

ImportError: No module named gi.repository

I'm trying to launch python script on Ubuntu 10.04:

from gi.repository import Nautilus, GObject

It doesn't work:

Traceback (most recent call last):
  File "script.py", line 1, in <module>
    from gi.repository import Nautilus, GObject
   ImportError: No module named gi.repository

I installed python-gobject-dev, python-gobject, python-nautilus, but it didn't help. Has anyone had this problem?

Upvotes: 15

Views: 47600

Answers (8)

zerfew
zerfew

Reputation: 1

very simple. open /usr/bin/gnome-terminal,you can see the interpreter is python3:

#!/usr/bin/python3

Change the path of the interpreter to python3.5:

#!/usr/bin/python3.5

Fixed it for me on Ubuntu 16.04.

Upvotes: 0

harry huang
harry huang

Reputation: 61

This works for me (Ubuntu 20.04 LTS):

sudo apt reinstall python3-gi

Upvotes: 2

Noam Manos
Noam Manos

Reputation: 17000

Try to fix it by installing PyGObject:

# With Apt on Ubuntu:
$ sudo apt install python3-gi

# With Yum on CentOS / RHEL:
$ sudo yum install python36-gobject.x86_64 

# Or directly with Pip:
$ pip3 install PyGObject  

Upvotes: 10

parsecer
parsecer

Reputation: 5136

sudo apt-get install -y python-gobject

Fixed it for me on Ubuntu 18.04.

Upvotes: 4

Abhijit
Abhijit

Reputation: 141

You need to install pygobject, pygobject3(3 comes from the gtk version, not python).

If you're on Mac:

  • ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null Install the latest version of homebrew
  • brew install pygobject Install pyobject
  • brew install pygobject3 Install pyobject3
  • mkdir -p /Users/abhijit/Library/Python/2.7/lib/python/site-packages Check and build the sitepath directory if it doesn't exist
  • echo 'import site; site.addsitedir("/usr/local/lib/python2.7/site-packages")' >> /Users/abhijit/Library/Python/2.7/lib/python/site-packages/homebrew.pth Create a shortcut in your python Site-packages to your homebrew path

Upvotes: 2

crypdick
crypdick

Reputation: 19894

@hob's answer for Anaconda didn't work for me, but conda install -c conda-forge pygobject did.

Upvotes: 4

hobs
hobs

Reputation: 19279

Anaconda usually has python package binaries that will work with your platform (Mac or older Ubuntu). According to @Abhijit you need pygobject. It works a lot like pip:

conda install -c auto pygobject

Upvotes: 3

nemequ
nemequ

Reputation: 17502

10.04? That's pre-GNOME 3, so the preferred Python bindings were based on PyGTK, not PyGObject. You need to either use the (obsolete) PyGTK bindings or upgrade to a newer OS.

Upvotes: 1

Related Questions