Вызвать макрос из скрипта Python?
Вопрос
Один из наших шаблонов страниц состоит из множества макросов.Эти элементы представляют собой набор html-таблиц.
Теперь я хочу использовать пару этих таблиц в скрипте Python для создания PDF-файла.Есть ли способ вызвать макрос из скрипта Python и получить обратно созданный HTML-код?
Если да, то можете ли вы объяснить?
Спасибо Эрик
Решение
Возможно, вы могли бы создать новый шаблон, включающий (use-macro) только те макросы, к которым вы хотите получить доступ из python, а затем использовать z3c.pt.pagetemplate.PageTemplateFile() для его рендеринга?
На самом деле, возможно (и, безусловно, проще) использовать chameleon.zpt.template.PageTemplate('<div tal:use-macro="<your-macro-here>" />'), но я никогда не делал этого сам.
Другие советы
Я бы, вероятно, использовал urllib.urlopen(url)
, перенесите данные со страницы обратно в python и используйте BeautifulSoup
чтобы извлечь таблицу (ы) из HTML...А затем отобразите это в формате PDF с помощью XHTML2PDF
(pisa.ho
).
Возможно, есть более простой способ, но для меня это был бы наименее напряженный подход.