【问题标题】:Javascript HTTP fetch request on ZapierZapier 上的 Javascript HTTP 获取请求
【发布时间】:2018-10-29 19:45:17
【问题描述】:

我在 Zapier 上使用 Javascript 步骤从 URL 中抓取 html,内容如下:

fetch('http://printatestpage.com') //example url
  .then(function(res) {
    return res.text();
  })
  .then(function(body) {
    var output = {id: 1234, rawHTML: body};
    callback(null, output);
  })
  .catch(callback);

这很好用,但是我不需要完整的 HTML 正文响应。

是否可以只输出特定的 div?例如在上面的代码中说我只想要从类 PrintButtons 输出 html 的响应?

【问题讨论】:

    标签: javascript zapier


    【解决方案1】:

    除非该主机提供一些其他 API 或其他允许您直接请求特定 div 的服务,否则您将必须获取完整的 html,然后在纯 Javascript(或在 JQuery 或另一个库)。

    如果您将 HTML 作为字符串,您可能需要 DOM Parser

    【讨论】:

      【解决方案2】:

      您可以使用cheerio 解析rawHTML 并使用类似jQuery 的DOM 操作

      https://www.npmjs.com/package/cheerio

      const cheerio  = require('cheerio')
      const $ = cheerio.load(rawHTML)
      const elementHTMLString = $('.PrintButtons').html()
      

      【讨论】:

      • 恐怕我们无法通过 Zapier 添加包。谢谢!
      • 也许你可以运行你自己的小服务器并使用 AJAX 来返回所需的值
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 2018-05-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多