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.22.tar.gz (12.0 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.22-py3-none-any.whl (13.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: confluenpy-0.1.22.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for confluenpy-0.1.22.tar.gz
Algorithm Hash digest
SHA256 b5ba731096c912a27ad261309e6691d29e6c03049f7e9368b4984f367941c3de
MD5 742d595a1e7e74a0c3a50538fe7b47d1
BLAKE2b-256 0b1977f280a2c0e16b027cc63ac9077d645d0b6030846b4f76bc89102dbb9dc0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: confluenpy-0.1.22-py3-none-any.whl
  • Upload date:
  • Size: 13.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.23

File hashes

Hashes for confluenpy-0.1.22-py3-none-any.whl
Algorithm Hash digest
SHA256 ff79014ff819bec13e3a07e475f925076c8bc65dac25b96ed185478ef824fc63
MD5 86a5014c7097cc32f127340fd754d40b
BLAKE2b-256 b235f0549698c4ea36f174f6884e76cffa412c681bc6e4f536d0e762b7c36040

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