Python suds安装错误:没有名为client的模块

Python suds安装错误:没有名为client的模块,python,pip,suds,Python,Pip,Suds,尝试使用pip-3.2安装suds时失败,出现错误 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"

尝试使用pip-3.2安装suds时失败,出现错误

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
sudo pip-3.2安装sud
下载/解包肥皂水
正在为包装泡沫运行setup.py egg\u info
回溯(最近一次呼叫最后一次):
文件“”,第16行,在
文件“/tmp/pip build/suds/setup.py”,第20行,在
进口肥皂水
文件“suds/\uuuu init\uuuuu.py”,第154行,在
导入客户端
ImportError:没有名为client的模块
从命令python setup.py egg_info完成输出:
回溯(最近一次呼叫最后一次):
文件“”,第16行,在
文件“/tmp/pip build/suds/setup.py”,第20行,在
进口肥皂水
文件“suds/\uuuu init\uuuuu.py”,第154行,在
导入客户端
ImportError:没有名为client的模块
此命名客户端是哪个模块?如果需要,如何安装?

根据页面,您应该尝试运行
sudo pip-3.2 install suds jurko
。看起来,
suds
可能没有更新以使用3.2,而
suds-jurko
已经更新。希望这有帮助

编辑:

suds-jurko
PyPI页面:

轻量级SOAP客户端(Jurko的fork)。 基于Jeff Ortel(redhat的jortel)最初的“泡沫”项目 .com)托管在“”

“Suds”是一个基于SOAP的轻量级web服务客户端,用于Python许可 在LGPL下(请参阅发行版中包含的LICENSE.txt文件)

希望这只是原始suds-Python库的一个临时分支 由于原始项目开发似乎已停止而创建的项目。 如果恢复,应该重新整合到原始项目中 再说一遍


我面临着类似的问题。我已经安装了suds-jurko0.6,但是当我在python3.3 shell中导入sud(导入sud)并执行dir(sud)时,输出如下:

['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']
也就是说,python没有导入suds模块。到目前为止,我的黑客解决方案一直在发挥作用 sys.path.append(suds.path[0])。不过,我并不完全满意。一个更鲁莽的人
解决方案应该与suds包顶部的ini.py文件相关。

找到client.py并将其路径添加到PYTHONPATH中。这会解决你的问题

在Windows Python 3.5中,它位于Python35\Lib\http中。
PYTHONPATH=E:\apps\Python35\Lib;E:\apps\Python35\Lib\http

我建议安装最新的jurko developer's cut,它应该能够处理大型WSDL的递归深度加载问题(我在NetSuite WSDL中遇到了这个问题)。这个版本应该能够解决这个问题

$ sudo pip install bitbucket.org/jurko/suds/get/tip.tar.gz#egg=suds
以下是Bitbucket项目页面:


基本上,suds库和python版本的兼容性存在问题。 您的python版本应该是2.7.14

我将我的python版本3.6降级到2.7.14,它对我起了作用


如果有任何进一步的错误,请告诉我。

通常情况下,这样的错误是由于对
源代码的错误导致的。venv/bin/activate
,其中
。venv
是您的虚拟机的位置。

在python 3.7.7中,您可以使用

pip install suds-py3
安装suds-py3软件包。 如果代码未按预期工作,则可以删除中的suds目录

python3.7/site-packages/
并重新运行

pip install suds-py3

也许太晚了,但你可以试试这个:

try:
   from suds.client import Client
except ImportError:
   print('Cannot import SUDS')

client
指的是suds中的client.py。我收到了相同的错误,只是做了一个
pip-install-client
,然后
pip-install-suds
工作得很好。但是你是怎么知道这些信息的?我真的像地狱一样在谷歌上搜索,什么也找不到。但谢谢你,伙计。现在谷歌的排名已经足够高了。:)希望到时候有人会发现它很有用@詹姆斯布鲁尔:我正试图安装联邦快递的图书馆,它需要肥皂水。我安装了
suds-jurko
,但它仍然抛出相同的错误。我正在使用Py3。2@Volatil3看起来Python Fedex库使用Python 2,因此为Python 3.2安装
suds jurko
不会有什么不同。原始的suds有一个稍微古怪的导入方案,实际上允许您在执行“导入suds”后使用suds.client(以及其他名称,如suds.cache)。suds jurko清理了导入,因此现在需要专门导入这些名称。您需要执行“导入suds.client”并将其称为suds.client,或者如果您想直接引用客户端,则需要执行“从suds导入客户端”。