# write to a confluence page
import xmlrpclib
CONFLUENCE_URL = "https://intranet.example.com/confluence/rpc/xmlrpc" 
CONFLUENCE_LOGIN = "a confluence username here"
CONFLUENCE_PASSWORD = "confluence pwd for username"
# get this from the page url while editing
# e.g. ../editpage.action?pageId=132350005 <-- here
PAGE_ID = "132350005" 
client = xmlrpclib.Server(CONFLUENCE_URL, verbose = 0)
auth_token = client.confluence2.login(CONFLUENCE_LOGIN, CONFLUENCE_PASSWORD)
page = client.confluence2.getPage(auth_token, PAGE_ID)
# and write the new contents
page['content'] = "!!!your content here!!!"
result = client.confluence2.storePage(auth_token, page)
client.confluence2.logout(auth_token)
请注意,当您执行此操作时,confluence会修改您的html代码.例如,它删除了元素上的脚本,样式和有时标题属性.为了让你的东西回到你身边然后需要使用他们的宏代码.
最简单的方法是在汇合处编辑页面并使其看起来像你想要的那样,然后抓住页面并打印页面['内容'],看看atlassian人决定对标准html做些什么神奇的新东西.
这似乎是绝对错误的方法.
首先,Confluence有一个插件架构,它允许您从应用程序本身以编程方式管理内容,而无需任何类型的HTTP请求.其次,即使您不想或不能因某种原因使用插件API,下一个显而易见的选择是使用SOAP/XML-RPC API.
除非您尝试进行某种包括测试GUI(例如自动跨浏览器测试)的端到端测试,否则没有理由实际使用buttons和textareas.