[英]AttributeError: 'PosixPath' object has no attribute 'read_text' while building heroku app
[英]Weasyprint get undefined property at invoking write_pdf: "AttributeError: 'PosixPath' object has no attribute 'read_text'"
我在 ubuntu 18.04 上运行 weasyprint 项目,并尝试创建 aa pdf。
当我尝试设置页脚图像时,问题就开始了。 我在 python 3.6.7 上运行
这是我调用 weasyprint 的代码:
import sys
import os
from weasyprint import HTML, CSS
htmlFile = sys.argv[1]
pdfFile = sys.argv[2]
html = HTML(filename=htmlFile)
css = CSS(string='@page { @bottom-center { width: 125%; margin-top: 10px; content: " "; background-image: url(file://' + os.getcwd() + '/pdf/footer.png); background-repeat: no-repeat; background-position: right; background-size: 100%; } }')
html.write_pdf(pdfFile, stylesheets=[css])
但后来我收到以下错误:
Error: Command failed: python3 /node_modules/my-project/python/run.py /node_modules/my-project/pdf/catalog_01e299a3-1fca-482b-a512-e1bea832559f.html /node_modules/my-project/pdf/catalog_01e299a3-1fca-482b-a512-e1bea832559f.pdf
Traceback (most recent call last):
File "/node_modules/my-project/python/run.py", line 3, in <module>
from weasyprint import HTML, CSS
File "/node_modules/my-project/python/weasyprint/__init__.py", line 394, in <module>
from .css import preprocess_stylesheet # noqa
File "/node_modules/my-project/python/weasyprint/css/__init__.py", line 25, in <module>
from . import computed_values
File "/node_modules/my-project/python/weasyprint/css/computed_values.py", line 17, in <module>
from .. import text
File "/node_modules/my-project/python/weasyprint/text.py", line 14, in <module>
import cairocffi as cairo
File "/node_modules/my-project/python/cairocffi/__init__.py", line 19, in <module>
VERSION = __version__ = (Path(__file__).parent / 'VERSION').read_text().strip()
AttributeError: 'PosixPath' object has no attribute 'read_text'
我在这里获得一些帮助后解决了这个问题: https : //github.com/Kozea/WeasyPrint/issues/807
问题在下面恢复:
在我的pyhton项目中,我得到了requiriments.txt,并将
pathlib
作为要求。 以某种方式,该pathlib会覆盖安装了python 3.5或更高版本的当前lib。 当我消除这种依赖性时,问题就解决了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.