获取<;标题>;使用JavaScript创建外部页面

获取<;标题>;使用JavaScript创建外部页面,javascript,parsing,zapier,Javascript,Parsing,Zapier,我想使用JavaScript从任何指定的外部页面获取标记的内容。具体来说,这是使用(vanilla node.js v4.3.2),因此可能不支持其他库 fetch是 文档声明:“非常重要-确保在异步示例中使用回调!” 我正在学习JavaScript,已经搜索和尝试了几个小时的各种方法。我不完全理解示例中的两个函数-我只需要返回一个“标题”,而不是完整的正文 我用的是一个,但它似乎有点古怪。因此,我希望我可以使用普通代码获取标题。如果您使用的是Node JS,那么您可以使用Request获取页面

我想使用JavaScript从任何指定的外部页面获取
标记的内容。具体来说,这是使用(vanilla node.js v4.3.2),因此可能不支持其他库

fetch

文档声明:“非常重要-确保在异步示例中使用回调!”

我正在学习JavaScript,已经搜索和尝试了几个小时的各种方法。我不完全理解示例中的两个函数-我只需要返回一个“标题”,而不是完整的正文


我用的是一个,但它似乎有点古怪。因此,我希望我可以使用普通代码获取标题。

如果您使用的是Node JS,那么您可以使用
Request
获取页面,然后使用解析页面内容。要获得标题,您可以执行以下操作:

const cheerio = require('cheerio');

request('http://example.com/', function (error, response, body) 
{
  if (error) {
      console.log(error);
      return
  }
  var $ = cheerio.load(body);
  var title = $("title").text();
});
如果Cheerio不可用,您可以使用更低技术的解决方案,只需使用一些简单的拆分。不是很强壮,但可能会得到你想要的

fetch('http://example.com/')
  .then(function(res) {
    var body = res.text();
    var title = body.split('<title>')[1].split('</title>')[0]
  })
  .catch(callback);
fetch('http://example.com/')
.然后(功能(res){
var body=res.text();
var title=body.split(“”)[1]。split(“”)[0]
})
.catch(回调);

什么是上下文?这应该在浏览器上运行还是在服务器上运行?@FelixKling在服务器上运行,而不是在浏览器上运行。这个问题不是重复的!它与Zapier特别相关,Zapier有特定的限制。Mod应在标记为重复之前仔细阅读问题。
TypeError:body.split不是一个函数
Cheerio不可用。正则方法会产生上述错误,我将其用于引用字符串定义。但我似乎无法成功地使用toString()进行修复,这是我读到的解决方案。有什么想法吗?我想,你的代码在功能上和我的完全一样。奇怪!如果标记具有属性,会发生什么情况?例如:
fetch('http://example.com/')
  .then(function(res) {
    var body = res.text();
    var title = body.split('<title>')[1].split('</title>')[0]
  })
  .catch(callback);