No project description provided
Project description
ConfluenPy
ConfluenPy is a Python package that allows you to interact with Atlassian Confluence via the REST API to programmatically create and update documentation pages content.
Example usage
# Example usage
confluence = atlassian.Confluence(
url='https://example.atlassian.net/',
username='your.user@company.com',
password=os.getenv('CONFLUENCE_API_TOKEN')
)
page = Page(title='WonderDocs', space='IsVast', confluence=confluence)
# Add a table of contents
page.body.toc()
# Add a horizontal rule
page.body.horizontal_rule()
# Takes the Readme.md file and converts it to confluence format
with open('README.md', encoding='utf-8') as markdown_text:
markdown = MarkdownToConfluenceConverter.convert(markdown_text.read())
# Only takes the second section of the markdown file
page.body.content += markdown.section(2)
# Upload any local images referenced in the markdown
for file in MarkdownToConfluenceConverter.local_images_to_be_uploaded:
page.attach_content(
content=file.open("rb"),
name=file.name,
)
# Adds some more content
page.body.heading('h1', "Biggest heading")
page.body.block_quote('This is a paragraph')
page.body.code_block(title='tt', content='Wonderful code')
# Update the page
page.update()
Installation
Simply install the package using pip:
pip install confluenpy
Usage
Confluence pages are represented by the Page
class. The page content is handled by a PageBody
object, which represents it in the confluence wiki markup.
The following confluence macros are also supported via the wiki markup (see the MacroMixin
class for details):
- toc
- code block
Markup support
The MarkdownToConfluenceConverter
class allows to convert markdown to confluence wiki markup. The following markdown elements are supported:
- headings
- code blocks
- images (both public and local to the repository, see the example above)
- links
- lists (ordered and unordered)
Regular markup notation is also supported (bold, italic..).
Example:
This content:
# Header
## Header
- list level 1
- list level 2
1. numbered list 1
2. numbered list 2
[here](https://www.google.com)
![excalidraw](excalidraw.png)
will be converted to:
h1. Header
h2. Header
* list level 1
** list level 2
# numbered list 1
## numbered list 2
[here|https://www.google.com]
![excalidraw|excalidraw.png]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for confluenpy-0.1.16-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f85c9ee4cc1fceb40512fa8e8b595f9944882c382db760d97c02eedc60eca205 |
|
MD5 | 7b8b1de96923c8be4dbd4a8aa268f1e5 |
|
BLAKE2b-256 | 9fd363d7dae359c335e4f5b94db21e45b767367f1fee5c32d8ec7a96fb791c74 |