Skip to main content
 首页 » 编程设计

python之类型错误 : parse() got an unexpected keyword argument 'override_encoding'

2025年05月04日11insus

Python 2.7.6 (default, Jun 22 2015, 17:58:13) 
[GCC 4.8.2] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> from weasyprint import HTML 
>>> HTML('http://weasyprint.org/').write_pdf('/tmp/weasyprint-website.pdf') 
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module> 
  File "/usr/local/lib/python2.7/dist-packages/weasyprint/__init__.py", line 94, in __init__ 
    namespaceHTMLElements=False) 
TypeError: parse() got an unexpected keyword argument 'override_encoding' 
>>> 

我相信我已经安装了所有依赖项。这是怎么回事?

请您参考如下方法:

看来你和这个https://github.com/Kozea/WeasyPrint/issues/353有同样的问题.

这可能是因为您的 html5lib 已过时。它至少需要是 html5lib-1.0b9。如果您通过 pip 安装 html5lib,它可能仍然是 html5lib-1.0b8。我建议你这样做更新:

pip install --pre html5lib