四月 28th, 2010
python 安装 soap
在python中安装soap,虽然有很多选择,不过耐用的还是soappy。
soappy算是超级老鸟了,最新版还是05年出的所以在安装上安装问题多多。除此以外,非常伤心的是它使用的pyxml直接不更新了。pyxml的最后更新时间是04年。
Twisted 也有soap但是支持并不好。
1. 安装 PyXML(http://pypi.python.org/pypi/PyXML)
wget http://downloads.sourceforge.net/pyxml/PyXML-0.8.4.tar.gz?modtime=1101741917&big_mirror=0 wget https://svn.pardus.org.tr/pardus/2009/stable/programming/language/python/PyXML/files/pyxml-0.8.4-python-2.6.patch patch -p0 < pyxml-0.8.4-python-2.6.patch wget http://svn.pardus.org.tr/pardus/2009/stable/programming/language/python/PyXML/files/non_ascii_fix.patch patch -p0 < non_ascii_fix.patch wget https://svn.pardus.org.tr/pardus/2009/stable/programming/language/python/PyXML/files/CVE-2009-2625.patch patch -p0 < CVE-2009-2625.patch python setup.py install
安装完成,检查
import xml
xml.__version__
‘0.8.4′
2.安装fpconst直接用setuptools安装
3.安装 SOAPpy
wget http://sourceforge.net/projects/pywebsvcs/files/SOAP.py/0.12.0_rc1/SOAPpy-0.12.0.tar.gz/download #改掉: SOAPpy-0.12.0/SOAPpy/Client.py SOAPpy-0.12.0/SOAPpy/GSIServer.py SOAPpy-0.12.0/SOAPpy/Server.py SOAPpy-0.12.0/SOAPpy/Types.py #把 from __future__ import nested_scopes 提到最前面去 python setup.py install #运行安装程
pyxml这个版本会报:as = ParsedAxisSpecifier.ParsedAxisSpecifier(‘descendant-or-self’) 错误,是因为as 是关键字 【貌似到目前正式版本问题还没解决,不过有其他小版本】
pyxml WARNING: this is no longer maintained! Do not use in new code!
xpath 在里面是用不了的,如果要用推荐elementtree
如:
from elementtree.ElementTree import ElementTree doc = ElementTree(file='tst.xml') for e in mydata.findall('/foo/bar'): print e.get('title').text
安装基本就完成了,很多东西要自己的搞,通过这篇文章希望可以帮助那些gg过来的人快速的解决那点问题。

五月 29th, 2010 1:18 下午
python很强大,不过soap这个模块太老,有新的就好了。