diff --git a/src/plugins/plugin_adhoc_dbus.py b/src/plugins/plugin_adhoc_dbus.py index bf78489a..e3fcab48 100644 --- a/src/plugins/plugin_adhoc_dbus.py +++ b/src/plugins/plugin_adhoc_dbus.py @@ -24,8 +24,11 @@ log = getLogger(__name__) from sat.core import exceptions from twisted.internet import defer from wokkel import data_form -from lxml import etree -from os import path +try: + from lxml import etree +except ImportError: + raise exceptions.MissingModule(u"Missing module lxml, please download/install it from http://lxml.de/") +import os.path import uuid import dbus from dbus.mainloop.glib import DBusGMainLoop diff --git a/src/plugins/plugin_misc_radiocol.py b/src/plugins/plugin_misc_radiocol.py index fc529004..51205678 100755 --- a/src/plugins/plugin_misc_radiocol.py +++ b/src/plugins/plugin_misc_radiocol.py @@ -29,10 +29,13 @@ import os.path import copy import time from os import unlink -from mutagen.oggvorbis import OggVorbis, OggVorbisHeaderError -from mutagen.mp3 import MP3, HeaderNotFoundError -from mutagen.easyid3 import EasyID3 -from mutagen.id3 import ID3NoHeaderError +try: + from mutagen.oggvorbis import OggVorbis, OggVorbisHeaderError + from mutagen.mp3 import MP3, HeaderNotFoundError + from mutagen.easyid3 import EasyID3 + from mutagen.id3 import ID3NoHeaderError +except ImportError: + raise exceptions.MissingModule(u"Missing module Mutagen, please download/install from https://bitbucket.org/lazka/mutagen") NC_RADIOCOL = 'http://www.goffi.org/protocol/radiocol' diff --git a/src/plugins/plugin_misc_text_syntaxes.py b/src/plugins/plugin_misc_text_syntaxes.py index 7a4fb1fc..04e73ee1 100755 --- a/src/plugins/plugin_misc_text_syntaxes.py +++ b/src/plugins/plugin_misc_text_syntaxes.py @@ -24,8 +24,11 @@ log = getLogger(__name__) from twisted.internet import defer from twisted.internet.threads import deferToThread from sat.core import exceptions -from lxml import html -from lxml.html import clean +try: + from lxml import html + from lxml.html import clean +except ImportError: + raise exceptions.MissingModule(u"Missing module lxml, please download/install it from http://lxml.de/") from cgi import escape import re diff --git a/src/plugins/plugin_xep_0054.py b/src/plugins/plugin_xep_0054.py index 8b67fd74..0beeb8a3 100755 --- a/src/plugins/plugin_xep_0054.py +++ b/src/plugins/plugin_xep_0054.py @@ -37,7 +37,10 @@ from base64 import b64decode, b64encode from hashlib import sha1 from sat.core import exceptions from sat.memory import persistent -from PIL import Image +try: + from PIL import Image +except: + raise exceptions.MissingModule(u"Missing module pillow, please download/install it from https://python-pillow.github.io") from cStringIO import StringIO try: diff --git a/src/plugins/plugin_xep_0071.py b/src/plugins/plugin_xep_0071.py index ff28ad57..5f6a78d0 100644 --- a/src/plugins/plugin_xep_0071.py +++ b/src/plugins/plugin_xep_0071.py @@ -25,7 +25,10 @@ log = getLogger(__name__) from wokkel import disco, iwokkel from zope.interface import implements # from lxml import etree -from lxml import html +try: + from lxml import html +except ImportError: + raise exceptions.MissingModule(u"Missing module lxml, please download/install it from http://lxml.de/") try: from twisted.words.protocols.xmlstream import XMPPHandler except ImportError: diff --git a/src/plugins/plugin_xep_0277.py b/src/plugins/plugin_xep_0277.py index df89e2d0..bbb530ef 100755 --- a/src/plugins/plugin_xep_0277.py +++ b/src/plugins/plugin_xep_0277.py @@ -31,7 +31,10 @@ from sat.tools import sat_defer # XXX: tmp.pubsub is actually use instead of wokkel version from wokkel import pubsub -from feed.date import rfc3339 +try: + from feed.date import rfc3339 +except ImportError: + raise exceptions.MissingModule(u"Missing module pyfeed, please download/install it from http://home.avvanta.com/~steveha/pyfeed.html") import uuid import time import urlparse