Weasyprint get undefined property at invoking write_pdf: quot;AttributeError: #39;PosixPath#39; object has no attribute #39;read_text#39;quot;(Weasyprint在调用WRITE_pdf:Quot;AttributeError:#39;PosiPath#39;对象没有属性#39;Read_Text#39;时获取未定义的属性) - IT屋-程序员软件开发技术分
问题描述
我在ubuntu 18.04上运行weasyprint项目,并尝试创建一个pdf。
当我尝试设置页脚图像时,问题开始了。我使用的是python3.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 s.txt,并将
pathlib
作为需求。不知怎么的,这个路径库覆盖了当前安装的库,尽管它安装了python3.5或更高版本。 当我删除此依赖项时,问题就解决了。
这篇关于Weasyprint在调用WRITE_pdf:&Quot;AttributeError:';PosiPath';对象没有属性';Read_Text';时获取未定义的属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Weasyprint在调用WRITE_pdf:&Quot;AttributeError:';PosiPath';对象没有属性';Read_Text';时获取未定义的属性
基础教程推荐
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- 将 YAML 文件转换为 python dict 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 合并具有多索引的两个数据帧 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01
- 哪些 Python 包提供独立的事件系统? 2022-01-01