【ChatGPT系列】如何使用confluence rest api(wiki自动化)

发布时间 2023-07-28 11:24:14作者: 天外归云

[本文出自天外归云的博客园]

问:帮我看看https://docs.atlassian.com/atlassian-confluence/REST/6.6.0/#user-getUser这里面提到的Get user api如何使用,给我写一段python脚本

ChatGPT:根据您提供的链接,您想要使用Atlassian Confluence提供的REST API中的getUser方法来获取用户信息。以下是一个示例Python脚本,演示如何使用该API:

import requests
import json

# 设置Confluence API的基本URL和用户名密码
base_url = 'https://your-confluence-url/rest/api'
username = 'your-username'
password = 'your-password'

# 设置要获取用户信息的用户名
user_name = 'the-username-you-want-to-get-info-for'

# 构建getUser API的URL
url = f'{base_url}/user?username={user_name}'

# 构建HTTP请求头部信息
headers = {
    'Accept': 'application/json'
}

# 发送GET请求,获取用户信息
response = requests.get(url, auth=(username, password), headers=headers)

# 解析响应JSON数据
user_info = json.loads(response.text)

# 打印用户信息
print(user_info)

在上面的示例中,我们首先设置了Confluence API的基本URL和用户名密码,以及要获取用户信息的用户名。然后,我们使用Python的字符串格式化功能构建了getUser API的完整URL。接下来,我们设置了HTTP请求头部信息,指定我们要接收JSON格式的响应数据。最后,我们使用Python requests库发送GET请求,获取用户信息,并将响应JSON数据解析为Python对象。我们打印用户信息以进行演示,但您可以根据需要使用它们进行其他操作。

请注意,您需要将示例中的“your-confluence-url”、“your-username”和“your-password”替换为您的Confluence网站的URL、用户名和密码。此外,如果您需要获取其他用户的信息,只需将“the-username-you-want-to-get-info-for”替换为您要获取信息的实际用户名即可。

 

问:上文中的password如果用令牌代替,要怎么做呢

ChatGPT:如果您使用的是Confluence Cloud版本,建议使用API Token来代替用户名和密码进行认证。以下是一个示例Python脚本,演示如何使用API Token进行认证:

import requests
import json

# 设置Confluence API的基本URL和API Token
base_url = 'https://your-confluence-url/rest/api'
api_token = 'your-api-token'

# 设置要获取用户信息的用户名
user_name = 'the-username-you-want-to-get-info-for'

# 构建getUser API的URL
url = f'{base_url}/user?username={user_name}'

# 构建HTTP请求头部信息
headers = {
    'Accept': 'application/json',
    'Authorization': f'Bearer {api_token}'
}

# 发送GET请求,获取用户信息
response = requests.get(url, headers=headers)

# 解析响应JSON数据
user_info = json.loads(response.text)

# 打印用户信息
print(user_info)

在上面的示例中,我们首先设置了Confluence API的基本URL和API Token,以及要获取用户信息的用户名。然后,我们使用Python的字符串格式化功能构建了getUser API的完整URL。接下来,我们设置了HTTP请求头部信息,指定我们要接收JSON格式的响应数据,并使用API Token进行认证。最后,我们使用Python的requests库发送GET请求,获取用户信息,并将响应JSON数据解析为Python对象。我们打印用户信息以进行演示,但您可以根据需要使用它们进行其他操作。

请注意,您需要将示例中的“your-confluence-url”和“your-api-token”替换为您的Confluence网站的URL和API Token。此外,如果您需要获取其他用户的信息,只需将“the-username-you-want-to-get-info-for”替换为您要获取信息的实际用户名即可。