Skip to main content

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.

License pylint Build/Release Coverage

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

confluenpy-0.1.24.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

confluenpy-0.1.24-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file confluenpy-0.1.24.tar.gz.

File metadata

  • Download URL: confluenpy-0.1.24.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for confluenpy-0.1.24.tar.gz
Algorithm Hash digest
SHA256 c8340f3e248fc8f07f6ff3533633045eb6fbefed901b0cda0952e2cdc82faabf
MD5 e5efacbba42d77d00bc2879835f531bc
BLAKE2b-256 8d39c4af4179653938ed7216dfe211979b2d49ae63167e41c41d8ee8dfadff8e

See more details on using hashes here.

File details

Details for the file confluenpy-0.1.24-py3-none-any.whl.

File metadata

  • Download URL: confluenpy-0.1.24-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for confluenpy-0.1.24-py3-none-any.whl
Algorithm Hash digest
SHA256 08d38d0ce229c7fa29496671866f1b355972a2e3729cd4ada077ae12a31aaa8f
MD5 339856003bc04de13c3b9df4d4a53113
BLAKE2b-256 c74caeef74bd6a955aba5618432d4a4621726940d83c39bf4793219b52281134

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page