2011-10-19 17 views
11

Kiedy próbuję zaimportować Webkit od gi.repository, daje ImportError:Nie można importować Webkit z gi.repository

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 

Co robię źle?

Odpowiedz

24

Twój błąd wydaje się literówką, a biblioteka nie została znaleziona.

Musisz umieścić "WebKit" zamiast "Webkit".

Dodatkowo, jeśli używasz Ubuntu sprawdzić istnienie biblioteki z:

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

Jeśli nie istnieje trzeba zainstalować pakiet gir1.2-WebKit 3.0:

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

Następnie na pytona scenariusz:

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

Uwaga: Dla Ubuntu 1 7.10 lub późniejsza biblioteka nazywa się WebKit2. Które mogą być zainstalowane:

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

I znaleziono w:

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

można użyć w Pythonie jak:

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

Wygląda na Ubuntu 17.10 i później powinno być gir1.2- webkit2-4.0, więc 'sudo apt-get install gir1.2-webkit2-4.0' powinno działać ... chociaż niestety nie można importować Webkita nawet po zainstalowaniu. – NoBugs

+0

Właściwie możesz, ale tylko używając modułu 'WebKit2' repozytorium gi, który różni się od wersji, którą mieliśmy wcześniej. – NoBugs

+0

Dziękuję, że dodałem jako notatkę również w odpowiedzi, była to zmiana od ponad 6 lat;) – shakaran

Powiązane problemy