Skip to main content

Trello

Trello 是一个基于Web的项目管理和协作工具,允许个人和团队组织和跟踪他们的任务和项目。它提供了一个名为“看板”的可视化界面,用户可以创建列表和卡片来表示他们的任务和活动。

TrelloLoader允许您从Trello看板加载卡片,并在py-trello之上实现。

目前仅支持api_key/token

  1. 凭据生成:https://trello.com/power-ups/admin/

  2. 点击手动令牌生成链接以获取令牌。

要指定API密钥和令牌,您可以设置环境变量TRELLO_API_KEYTRELLO_TOKEN,或者直接将api_keytoken传递给from_credentials便捷构造方法。

此加载器允许您提供看板名称,以将相应的卡片加载到文档对象中。

请注意,官方文档中的看板“名称”也称为“标题”:

https://support.atlassian.com/trello/docs/changing-a-boards-title-and-description/

您还可以指定多个加载参数,以包含/删除文档页面内容属性和元数据中的不同字段。

特点

  • 从Trello看板加载卡片。
  • 根据卡片的状态(打开或关闭)筛选卡片。
  • 在加载的文档中包括卡片名称、评论和检查清单。
  • 自定义要包含在文档中的附加元数据字段。

默认情况下,所有卡片字段都包含在完整文本页面内容和元数据中。

#!pip install py-trello beautifulsoup4 lxml
# 如果您已经使用环境变量设置了API密钥和令牌,
# 您可以跳过此单元格,并在下面的初始化步骤中注释掉`api_key`和`token`命名参数。
from getpass import getpass

API_KEY = getpass()
TOKEN = getpass()
    ········
········
from langchain.document_loaders import TrelloLoader

# 从“Awesome Board”获取打开的卡片
loader = TrelloLoader.from_credentials(
"Awesome Board",
api_key=API_KEY,
token=TOKEN,
card_filter="open",
)
documents = loader.load()

print(documents[0].page_content)
print(documents[0].metadata)
    Review Tech partner pages
Comments:
{'title': 'Review Tech partner pages', 'id': '6475357890dc8d17f73f2dcc', 'url': 'https://trello.com/c/b0OTZwkZ/1-review-tech-partner-pages', 'labels': ['Demand Marketing'], 'list': 'Done', 'closed': False, 'due_date': ''}
# 获取“Awesome Board”中的所有卡片,但只包括卡片列表(列)作为额外的元数据。
loader = TrelloLoader.from_credentials(
"Awesome Board",
api_key=API_KEY,
token=TOKEN,
extra_metadata=("list"),
)
documents = loader.load()

print(documents[0].page_content)
print(documents[0].metadata)
    Review Tech partner pages
Comments:
{'title': 'Review Tech partner pages', 'id': '6475357890dc8d17f73f2dcc', 'url': 'https://trello.com/c/b0OTZwkZ/1-review-tech-partner-pages', 'list': 'Done'}
# 从“Another Board”获取卡片,并从文档页面内容中排除卡片名称、检查清单和评论。
loader = TrelloLoader.from_credentials(
"test",
api_key=API_KEY,
token=TOKEN,
include_card_name=False,
include_checklist=False,
include_comments=False,
)
documents = loader.load()

print("Document: " + documents[0].page_content)
print(documents[0].metadata)