如何基于对所有可用空间的搜索将一个或多个Confluence空间导出到PDF?信息稀缺,所以我将此作为问答来帮助他人。
我读过大量API的弃用、替换和问题报告,我知道Confluence仍然不允许通过现代的RESTful API导出PDF,只能通过其长期不受支持的SOAP API。
我读过的一些比较有用的内容包括:
https://jira.atlassian.com/browse/CONFSERVER-9901https://community.atlassian.com/t5/Confluence-questions/RPC-Confluence-export-fails-with-TYPE-PDF/qaq-p/269310https://developer.atlassian.com/server/confluence/remote-api-specification-for-pdf-export/
下面的SO示例与所需的类似,但它不搜索空间,这需要在2015年6月之前的某个时间使用不同的端点。使用Ruby和PHP也代表在我的团队中引入了一种新语言,我们更愿意坚持使用C#、Python,在紧急情况下使用Java.How to export a Confluence "Space" to PDF using remote API
1条答案
按热度按时间bmp9r5qi1#
下面的Python脚本是使用Python 3.11和Confluence Server 7.19测试的。它写得很短,并不完美,所以可以根据需要随意修改。
Python 3代码
示例输出
成功导出后,PDF文件将与脚本位于同一文件夹中。
遇到的错误和可能的原因
| 错误|注|
| - ------|- ------|
| ValueError:标记名称"Object []"无效|SOAP API可能已禁用,请咨询管理员|
| requests.exceptions.HTTPError:401客户端错误|密码错误或无权导出空间|
| requests.exceptions.ConnectTimeout|Confluence示例关闭或URL不正确|