langchain.document_loaders.ConfluenceLoader.load 给出 AttributeError: 'str' 对象在从空间读取所有文档时没有属性 'get'

问题描述 投票:0回答:1

当我尝试here给出的示例代码时:

from langchain.document_loaders import ConfluenceLoader

loader = ConfluenceLoader(
    url="<my confluence link>", username="<my user name>", 
    api_key="<my token>"
)
documents = loader.load(space_key="<my space>", include_attachments=True, limit=1, max_pages=1)

我收到错误:

AttributeError: 'str' object has no attribute 'get'

这是堆栈的最后一部分:

    554     """
    555     Get all pages from space
    556 
   (...)
    568     :return:
    569     """
    570     return self.get_all_pages_from_space_raw(
    571         space=space, start=start, limit=limit, status=status, expand=expand, content_type=content_type
--> 572     ).get("results")

有什么想法吗?我在here看到一个问题,但它仍然处于开放状态。

我现在还专门针对这个问题打开了bug

以下是原始代码中所需修复的摘要:

  1. 请勿在 URL 后缀 /wiki/home
  2. 用户名后缀@您的域名
  3. 使用 URL 中的空间 ID,而不是其显示名称

然后就可以了。错误处理很差,无法指出这些问题。

python langchain confluence document-loader
1个回答
1
投票

ConfluenceLoader
用途
atlassian-python-api
github 源文档参考
confluence.py
期待 Confluence 的成功回应。 示例

  1. 验证令牌是否仍然有效 - API 令牌
  2. 在浏览器上,如果您的页面是 -
    https://simpleappdesigner.atlassian.net/wiki/spaces/~61dc5d78e67ea2006b1efbc0/pages/65676/Debug+the+python+issue
    ,那么
    confluence_link='https://simpleappdesigner.atlassian.net'
    space_key="~61dc5d78e67ea2006b1efbc0"
  3. 所以装载机是
loader = ConfluenceLoader(
    url=confluence_link, username="[email protected]", 
    api_key=api_key
)

以及文件:

documents = loader.load(space_key=space_key, include_attachments=True, limit=5, max_pages=5)

通过上述更改,我能够运行以下代码:

confluence_link='https://simpleappdesigner.atlassian.net'

space_key="~61dc5d78e67ea2006b1efbc0"

loader = ConfluenceLoader(
    url=confluence_link, username="[email protected]", 
    api_key=api_key
)
documents = loader.load(space_key=space_key, include_attachments=True, limit=5, max_pages=5)

可以通过postman访问,调试时,方法如下(注意下面屏幕截图中的api url:)):

希望这有帮助。如果有疑问,我们将很乐意提供进一步帮助。

© www.soinside.com 2019 - 2024. All rights reserved.