suds install error: no module named client
Question:
Trying to install suds with pip-3.2 and it fails with the error
sudo pip-3.2 install suds
Downloading/unpacking suds
Running setup.py egg_info for package suds
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build/suds/setup.py", line 20, in <module>
import suds
File "suds/__init__.py", line 154, in <module>
import client
ImportError: No module named client
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build/suds/setup.py", line 20, in <module>
import suds
File "suds/__init__.py", line 154, in <module>
import client
ImportError: No module named client
Which module is this named client and how do I install it if need be?
Answers:
According to this page, you should try running sudo pip-3.2 install suds-jurko
. It looks like suds
may not have been updated to work with 3.2 whereas suds-jurko
has been. Hope this helps!
EDIT:
From the suds-jurko
PyPI page:
Lightweight SOAP client (Jurko’s fork).
Based on the original ‘suds’ project by Jeff Ortel (jortel at redhat
dot com) hosted at ‘https://fedorahosted.org/suds‘.
‘Suds’ is a lightweight SOAP-based web service client for Python licensed
under LGPL (see the LICENSE.txt file included in the distribution).
This is hopefully just a temporary fork of the original suds Python library
project created because the original project development seems to have stalled.
Should be reintegrated back into the original project if it ever gets revived
again.
I am facing the similar sort of problem. I’ve installed suds-jurko0.6, but when I am importing suds (import suds), and doing dir(suds) in the python3.3 shell, the output is the following:
['BuildError',
'BytesIO',
'MethodNotFound',
'PortNotFound',
'Repr',
'ServiceNotFound',
'SoapHeadersNotPermitted',
'TypeNotFound',
'UnicodeMixin',
'WebFault',
'__build__',
'__builtins__',
'__cached__',
'__doc__',
'__file__',
'__initializing__',
'__loader__',
'__name__',
'__package__',
'__path__',
'__version__',
'byte_str',
'byte_str_class',
'null',
'objid',
'sys',
'tostr',
'version']
That is, python is not importing suds modules. My hackish solutions so far has been doing
sys.path.append(suds.path[0]). I am not entirely happy with it, though. A more rubbost
solution should be related to the ini.py file at the top of the suds package.
Locate client.py and add its path in PYTHONPATH. This will solve your problem.
In Windows Python 3.5 it was in Python35Libhttp.
PYTHONPATH=E:appsPython35Lib;E:appsPython35Libhttp;
I would recommend installing the latest jurko developer’s cut, which should handle an issue with recursion depth loading for big WSDL’s (I ran into this with the NetSuite WSDL) This version should fix the issue.
$ sudo pip install bitbucket.org/jurko/suds/get/tip.tar.gz#egg=suds
Here is the Bitbucket Project page:
Basically there is a problem with the compatbility of suds library and python version .
Your python version should be 2.7.14.
I downgraded my python version 3.6 to 2.7.14 and it worked for me.
Please let me know , if there are any further errors.
Often times errors like this result from an error to source .venv/bin/activate
, where .venv
is the location of your virtualenv.
In python 3.7.7, you can use
pip install suds-py3
to install suds py3 package.
If your code not work as expected, you can delete the suds directory in
python3.7/site-packages/
and rerun
pip install suds-py3
Maybe is too late, but you would try this:
try:
from suds.client import Client
except ImportError:
print('Cannot import SUDS')
Trying to install suds with pip-3.2 and it fails with the error
sudo pip-3.2 install suds
Downloading/unpacking suds
Running setup.py egg_info for package suds
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build/suds/setup.py", line 20, in <module>
import suds
File "suds/__init__.py", line 154, in <module>
import client
ImportError: No module named client
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 16, in <module>
File "/tmp/pip-build/suds/setup.py", line 20, in <module>
import suds
File "suds/__init__.py", line 154, in <module>
import client
ImportError: No module named client
Which module is this named client and how do I install it if need be?
According to this page, you should try running sudo pip-3.2 install suds-jurko
. It looks like suds
may not have been updated to work with 3.2 whereas suds-jurko
has been. Hope this helps!
EDIT:
From the suds-jurko
PyPI page:
Lightweight SOAP client (Jurko’s fork).
Based on the original ‘suds’ project by Jeff Ortel (jortel at redhat
dot com) hosted at ‘https://fedorahosted.org/suds‘.‘Suds’ is a lightweight SOAP-based web service client for Python licensed
under LGPL (see the LICENSE.txt file included in the distribution).This is hopefully just a temporary fork of the original suds Python library
project created because the original project development seems to have stalled.
Should be reintegrated back into the original project if it ever gets revived
again.
I am facing the similar sort of problem. I’ve installed suds-jurko0.6, but when I am importing suds (import suds), and doing dir(suds) in the python3.3 shell, the output is the following:
['BuildError',
'BytesIO',
'MethodNotFound',
'PortNotFound',
'Repr',
'ServiceNotFound',
'SoapHeadersNotPermitted',
'TypeNotFound',
'UnicodeMixin',
'WebFault',
'__build__',
'__builtins__',
'__cached__',
'__doc__',
'__file__',
'__initializing__',
'__loader__',
'__name__',
'__package__',
'__path__',
'__version__',
'byte_str',
'byte_str_class',
'null',
'objid',
'sys',
'tostr',
'version']
That is, python is not importing suds modules. My hackish solutions so far has been doing
sys.path.append(suds.path[0]). I am not entirely happy with it, though. A more rubbost
solution should be related to the ini.py file at the top of the suds package.
Locate client.py and add its path in PYTHONPATH. This will solve your problem.
In Windows Python 3.5 it was in Python35Libhttp.
PYTHONPATH=E:appsPython35Lib;E:appsPython35Libhttp;
I would recommend installing the latest jurko developer’s cut, which should handle an issue with recursion depth loading for big WSDL’s (I ran into this with the NetSuite WSDL) This version should fix the issue.
$ sudo pip install bitbucket.org/jurko/suds/get/tip.tar.gz#egg=suds
Here is the Bitbucket Project page:
Basically there is a problem with the compatbility of suds library and python version .
Your python version should be 2.7.14.
I downgraded my python version 3.6 to 2.7.14 and it worked for me.
Please let me know , if there are any further errors.
Often times errors like this result from an error to source .venv/bin/activate
, where .venv
is the location of your virtualenv.
In python 3.7.7, you can use
pip install suds-py3
to install suds py3 package.
If your code not work as expected, you can delete the suds directory in
python3.7/site-packages/
and rerun
pip install suds-py3
Maybe is too late, but you would try this:
try:
from suds.client import Client
except ImportError:
print('Cannot import SUDS')