我需要通过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')
这似乎不是 token 问题:我尝试使用 Atlassian API token https://id.atlassian.com/manage-profile/security/api-tokens或Google API token (我的组织也使用 Google 凭据访问 Confluence)。使用登录凭据也不起作用。
最佳答案
您的尝试中有两个问题。
首先,url
需要是您的 Confluence 站点的基本 url,因此在您的情况下,类似于 url='https://conf.myorg.com'
.
其次,使用参数username=
和password=
用于基本身份验证。但我猜你想要 OAuth?或者您所指的 token 是 Atlassian API token 吗?无论哪种方式,overview of all different authentication modes can be found in the documentation 。以下示例取自此处。
OAuth:
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 token :
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)
关于python-3.x - 通过python脚本访问confluence页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63231991/