首页 > 解决方案 > Google Apps Script DocumentApp(不是电子表格)获取嵌入在文档中的超链接

问题描述

对于脚本项目(使用 Google Apps 脚本),我需要获取 Google 文档的内容并解析内容。我可以通过使用来做到这一点

  var doc = DocumentApp.openById('xxx')
  var d = doc.getBody().getText()
  Logger.log(d)

但这会以文本的形式获取所有内容。在同一个文档中,我希望有超链接。我需要获取这些超链接来执行一些操作。

我知道这可以在 SpreadSheetApp 中完成。我还看到了在 Google 文档中插入超链接文本的示例。但我无法找到从文档中获取嵌入式超链接 URL 的方法。

感谢任何帮助或建议。TIA。

标签: google-apps-scriptgoogle-docs-api

解决方案


试试这个:

function getLinks() {
  var doc=DocumentApp.getActiveDocument();
  var body=doc.getBody();
  for(var i=0;i<body.getNumChildren();i++) {
    var child=body.getChild(i);
    var attr=child.getAttributes();
    var linkUrl=attr.LINK_URL;
    if(linkUrl) {
      Logger.log('Child Index: %s linkUrl: %s text: %s',i,linkUrl,child.asText().getText());
    }
  }
}

推荐阅读