0

我对nodejs很陌生,并且很难想出一个解决方案来完全清除以下内容:

  1. 提出表单发布请求<-工作
  2. 数据以 html <- 的形式返回
  3. 将 data/html 和 createWriteStream 'stdout' 保存到文件或将其保存到数据库(我在想 redis,因为我只需要在重新运行代码之前将数据 TTL 设为 15 分钟。<- 我已将数据保存到 HD,尽管我觉得这很笨拙。
  4. 一旦我有了 data/html 文件,我需要使用 JS HTML DOM 方法来提取特定的表格单元格数据并将其发送到 http 服务器以供客户端查看。<- 这是我无法工作的部分。

这是我的代码的链接: https ://gist.github.com/bingeboy/6087474

4

1 回答 1

0

我错过了 jsdom.jsdom 方法。

var jsdom = require("jsdom");

需要:

var jsdom = require("jsdom").jsdom;

这允许窗口回调加载文件。以前我在错误 cb 中获取文件。var fs = require('fs') , jsdom = require('jsdom').jsdom;

var htmlSource = fs.readFileSync(__dirname + "/date.html", "utf8")
  , document = jsdom(htmlSource)
  , window = document.parentWindow;

console.log(typeof window.document.getElementsByClassName); //function
console.log(window.document.getElementsByTagName('a')[1].innerHTML); //logs link text "311.json"
于 2013-07-27T03:11:43.297 回答