从Python脚本调用宏?
我们的一个页面模板是由一堆宏组成的。这些项目是一堆 html 表。
现在,我想要在 Python 脚本中使用几个这样的表来创建 PDF。有没有办法从 Python 脚本调用宏并获取生成的 HTML?
如果是这样,你能解释一下吗?
谢谢 埃里克
One of our page templates is made up of a bunch of macros. These items are a bunch of html tables.
Now, I want a couple of these tables in a Python script to create a PDF. Is there a way call a macro from a Python script and get back the HTML that is produced?
If so, can you explain?
Thanks
Eric
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
也许您可以创建一个新模板,其中仅包含(use-macro)您想要从 python 访问的宏,然后使用 z3c.pt.pagetemplate.PageTemplateFile() 来渲染它?
实际上,使用 chameleon.zpt.template.PageTemplate('
Maybe you could create a new template including (use-macro) just the macros you want to access from python and then use z3c.pt.pagetemplate.PageTemplateFile() to render it?
Actually, it might be possible (and certainly easier) to use chameleon.zpt.template.PageTemplate('<div tal:use-macro="<your-macro-here>" />'), but I've never did this myself.
我可能会使用
urllib.urlopen(url)
,将数据从页面拉回Python,并使用BeautifulSoup
从HTML中提取表格。 .. 然后使用XHTML2PDF
(pisa.ho
) 将其渲染为 PDF。可能有更简单的方法,但对我来说,这将是压力最小的方法。
I'd probably use
urllib.urlopen(url)
, pull the data from the page back to python and useBeautifulSoup
to pull the table(s) out of the HTML... And then render that to PDF withXHTML2PDF
(pisa.ho
).There might be a simpler way but for me, this would be the least stressful approach.