gpt4 book ai didi

google-docs-api - 有没有办法替换 Google Docs API 中文本的 URL 链接?

转载 作者:行者123 更新时间:2023-12-02 03:18:07 25 4
gpt4 key购买 nike

我开始使用 Python 探索 Google Docs API。除了一件事,它几乎完成了我想让它做的所有事情。

我可以替换文档的文本,但无法更改超链接的值。

意思是如果链接看起来像这样:a link ,我可以更改文本 a link 的值,但不能更改目标 URL。

我一直在浏览文档,但找不到任何相关信息。这可能是缺少的功能,还是我错过了这样做的方法?

最佳答案

您可以使用 Google Docs API 中的 batchupdate 方法的 UpdateTextStyleRequest 修改超链接。此时请设置TextStyleLink属性。

端点

POST https://docs.googleapis.com/v1/documents/{file ID}:batchUpdate

请求正文:

{
"requests": [
{
"updateTextStyle": {
"textStyle": {
"link": {
"url": "https://sampleUrl" # Please set the modified URL here.
}
},
"range": {
"startIndex": 1,
"endIndex": 2
},
"fields": "link"
}
}
]
}

备注:

  • 从您的问题中,我了解到您已经使用过 Google Docs API,并且可以修改链接文本的文本。我认为您可以使用上面的请求正文和您拥有的脚本修改链接。

引用资料:

如果这对您的情况没有用,我深表歉意。

编辑:

  • 您想检索带有超链接的文本。

从您的回复评论中,我可以像上面那样理解。当我的理解正确时,您可以使用 documents.get 方法检索它。在这种情况下,当使用 fields 时,响应变得易于阅读。

端点:

GET https://docs.googleapis.com/v1/documents/{file ID}?fields=body(content(paragraph(elements(endIndex%2CstartIndex%2CtextRun(content%2CtextStyle%2Flink%2Furl)))))
  • 在此端​​点中,body(content(paragraph(elements(endIndex,startIndex,textRun(content,textStyle/link/url)))))用作字段.

响应示例:

例如,当将以下文本放入 Google 文档并且 def 具有超链接时,

abc
def

响应如下。从以下结果中,您可以检索带有超链接的文本的位置。使用它,您可以修改超链接。

{
"body": {
"content": [
{},
{
"paragraph": {
"elements": [
{
"startIndex": 1,
"endIndex": 5,
"textRun": {
"content": "abc\n",
"textStyle": {}
}
}
]
}
},
{
"paragraph": {
"elements": [
{
"startIndex": 5,
"endIndex": 8,
"textRun": {
"content": "def",
"textStyle": {
"link": {
"url": "https://sample/"
}
}
}
},
{
"startIndex": 8,
"endIndex": 9,
"textRun": {
"content": "\n",
"textStyle": {}
}
}
]
}
}
]
}
}

引用:

关于google-docs-api - 有没有办法替换 Google Docs API 中文本的 URL 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55538289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com