Can't import Webkit from gi.repository

Abhilash Nanda picture Abhilash Nanda · Oct 19, 2011 · Viewed 12.1k times · Source

When I try to import Webkit from gi.repository, it gives an ImportError:

from gi.repository import Webkit
ERROR:root:Could not find any typelib for Webkit
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name Webkit

What am I doing wrong?

Answer

shakaran picture shakaran · Nov 1, 2011

Your error seems a typo and the library is not found for that.

You have to put "WebKit" instead of "Webkit".

Additionaly if you use Ubuntu check the library existence with:

$ locate girepository | grep WebKit
/usr/lib/girepository-1.0/WebKit-3.0.typelib

If doesn't exist you need install the package gir1.2-webkit-3.0:

# apt-get install gir1.2-webkit-3.0 

Then on python script:

import gi
gi.require_version('WebKit', '3.0')
from gi.repository import WebKit

Note: For Ubuntu 17.10 or later, the library seems called WebKit2. Which could be installed:

$sudo apt-get install gir1.2-webkit2-4.0

And found in:

$ locate girepository | grep WebKit
/usr/lib/x86_64-linux-gnu/girepository-1.0/WebKit2-4.0.typelib

You can use in Python like:

import gi
gi.require_version('WebKit2', '4.0')
from gi.repository import WebKit2