ImportError: cannot import name Serializer

ImportError: cannot import name Serializer

我正在使用 python 2.7 并尝试 运行 python-xbrl 包。按照确切的说明 here,但每次我尝试 import xbrlfrom xbrl import XBRLParser, GAAP, GAAPSerializer 我都会得到

ImportError                               Traceback (most recent call last)
<ipython-input-2-ccb496289539> in <module>()
----> 1 import xbrl

/usr/local/lib/python2.7/dist-packages/xbrl/__init__.py in <module>()
      6 version = (1, 1, 0)
      7 
----> 8 from .xbrl import XBRLParser, GAAP, GAAPSerializer, XBRLParserException

/usr/local/lib/python2.7/dist-packages/xbrl/xbrl.py in <module>()
      3 
      4 import re
----> 5 from marshmallow import Serializer, fields
      6 import datetime
      7 import collections

ImportError: cannot import name Serializer

到目前为止,我已经更新了所有必需的包 (pytest, pep8, marshmallow, beautifulsoup4, ordereddict, lxml, six) 并更新了 python-xbrl,但我仍然遇到相同的错误。

是棉花糖版的问题。尝试-

pip uninstall marshmallow
pip install marshmallow==1.2.6

我认为这是一个已知问题,如 here 所示。

我们只需要安装来自 github 的最新更新。 sudo pip install git+https://github.com/greedo/python-xbrl.git