2

我需要通过 python 脚本访问 Confluence 页面,但是虽然我在网上找到了一些示例,但我无法做到。

以下是一些尝试:

import requests

urllogin = 'https://myorg/confluence/display/path/to/page'
login = requests.get(urllogin, auth=('myusername', 'mytoken'))
print(login.status_code)
from atlassian import Confluence

confluence = Confluence(
    url='https://myorg/confluence/display/path/to/page',
    username='myusername',
    password='mytoken')

这似乎不是令牌问题:我尝试使用 Atlassian API 令牌https://id.atlassian.com/manage-profile/security/api-tokensGoogle API 令牌(我的组织使用 Google 凭据访问 Confluence以及)。使用登录凭据也不起作用。

4

1 回答 1

1

您的尝试有两个问题。

首先,url需要是您的汇合站点的基本 url,所以在您的情况下,类似于url='https://conf.myorg.com'.

其次,使用参数username=password=用于基本身份验证。但我猜你想要 OAuth?还是您所指的令牌是 Atlassian API 令牌?无论哪种方式,都可以在文档中找到所有不同身份验证模式的概述。以下示例取自那里。

认证:

from atlassian import Confluence

oauth_dict = {
    'access_token': 'access_token',
    'access_token_secret': 'access_token_secret',
    'consumer_key': 'consumer_key',
    'key_cert': 'key_cert'}

confluence = Confluence(
    url='http://localhost:8090',
    oauth=oauth_dict)

API 令牌:

from atlassian import Confluence

# Obtain an API token from: https://id.atlassian.com/manage-profile/security/api-tokens
# You cannot log-in with your regular password to these services.

confluence = Confluence(
    url='https://your-domain.atlassian.net',
    username=jira_username,
    password=jira_api_token,
    cloud=True)
于 2021-03-25T21:55:05.880 回答