使用 Google App Script 从 URL 提取标题

3
我希望在Google电子表格上输入一个URL,然后通过使用Google应用脚本来获取标题。您知道如何实现吗?

如果您有一个简单的 onEdit() 触发器,它可以监视您的电子表格进行编辑。然后它可以获取URL,使用 UrlFetchApp.fetch() 进行HTTPS请求并获取标题。这个问题对于stackoverflow来说太普遍了。您可以加入 Google Apps Script Group 并在那里提问。 - Alan Wells
谢谢,@SandyGood。我会前往Google Apps Script小组寻求进一步的帮助。 - mcarvajal
3个回答

7
您可以在电子表格中使用importxml函数来完成:
=IMPORTXML("URL","//title")

是的,这是最快和最简单的解决方案。非常感谢您的建议,Aurielle Perlmann。谢谢! - mcarvajal
谢谢!是的,我第一次尝试了,但似乎我的声望不够高,无法显示它。 - mcarvajal
如果您的文档有多个标题,我建议使用=IMPORTXML("URL","//head[position()<=1]/title")。 - furtive
如果由于某种原因您的文档有多个标题,我建议使用=IMPORTXML("URL","//head[position()<=1]/title")。 - undefined

3
这里有一个神奇的方法 ;)
设置onEdit触发器,
function onEdit(e)
{
  var url = e.value;
  var urlData = UrlFetchApp.fetch(url).getContentText();
  var xmldoc = Xml.parse(urlData, true);
  var title = xmldoc.html.head.getElements("title")[0].getText();
  Logger.log('URL Title: '+ title);
  Browser.msgBox('URL Title: '+ title);
}

Tada!

谢谢,iJay。我会尝试这个解决方案。 - mcarvajal
不,它不起作用。如果您创建一个可安装的触发器,那么可以实现,但不能从基于命名为onEdit()的触发器中触发。 - kodi

1
=HYPERLINK(IMPORTXML("https://www.https://en.wikipedia.org/wiki/Moon_landing";"//title"))

所以你有一个高亮、可点击的超链接 ;)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接