我想将AsciiMath转换为MathML。我只是想获取XML内容,但我不需要在浏览器上显示。
所以,我安装了MathDOM 0.8,lxml 2.3,pyparsing 1.5.6。我没有安装PyXML,因为MathDOM使用PyXML 或 lxml,和 pyparsing。
然后我在MathDOM目录中运行了三个例子,例如dom.py,infix.py和ldom.python。
dom.py 和 infix.py 输出错误: ImportError:没有名为Element的模块
否则, ldom.py 会输出其他错误: AttributeError:'NoneType'对象没有属性'setParseAction'
我也尝试过安装PyXML,但我也无法运行这些示例。
请帮帮我。
感谢。
答案 0 :(得分:1)
我遇到了完全相同的问题 - 非常感谢你和Jon Olav Vik指出我的解决方案。
我正在使用virtualenv
和pip
,因此通过常规机制安装旧版本实际上比Jon描述的手动捆绑更好。不幸的是,仅仅执行pip install pyparsing==1.4.2
不起作用,但在SourceForge上指向pip
肯定会有效。在一行中:
$ pip install http://downloads.sourceforge.net/project/pyparsing/pyparsing/pyparsing-1.4.2/pyparsing-1.4.2.tar.gz
答案 1 :(得分:0)
MathDOM 0.8(安装模块mathml
)works only with the older pyparsing 1.4.2。
以下是使用旧版本覆盖pyparsing
的方法,仅影响mathml
。在Windows 7上的Python 2.7上测试:
pyparsing.py
(版本1.4.2根据SVN提交消息,尽管存储库中没有标记)并将其保存在您解压缩的mathdom-0.8/mathml
文件夹中。这将优先于已安装的pyparsing
,但仅适用于mathml
包。mathdom-0.8/
并安装(例如python setup.py install
或pip install .
,可能附加--prefix=$HOME/usr
或某些内容。使用python -c "from mathml import termparser"
进行测试;它应该在先前使用AttributeError: 'NoneType' object has no attribute 'setParseAction'
失败的地方取得成功。
您还可以验证python -c "from mathml import pyparsing; print pyparsing.__version__"
打印1.4.2
,而python -c "import pyparsing; print pyparsing.__version__"
打印1.5.6
。
希望这有帮助!
答案 2 :(得分:0)
我碰巧在Windows 7的python 2.7上遇到matplotlib的pyparsing缺失。我从https://pypi.python.org/pypi/pyparsing/1.5.7下载了zip版本,解压缩,在解压后的目录中打开一个命令提示符,我在那里运行setup.py并运行{ {1}}它奏效了!唯一的补充是我必须将python位置添加到我的路径变量中。像这样:python setup.py install
在执行上一个命令之前。