Firefox插件:如何从网页中获取数据?

3

目的

我正试图为网站表单制作一个通用的答案数据库。该表单是关于计算机硬件规格说明的描述,我正在尝试使它根据型号字段自动填充其他字段。扩展将有两个按钮,“填充”按钮将根据型号字段,在数据库中查找匹配条目,然后根据此填充数据到表单中。第二个按钮是“保存”,它将获取字段中的数据并与型号字段对应,并将其放入数据库中。

问题

因此,我的主要问题是如何与网页本身交互,如何从网页中获取数据,然后如何更改字段?


你尝试过什么?你有阅读文档吗? - willlma
1个回答

5
我的主要问题是如何与网页本身交互,我该如何从网页中获取数据,然后如何更改字段?
您可以使用Firefox Add-on SDK Page-mod,在此处单击以获取文档来完成此操作。
以下是获取数据的示例:

示例页面修改器

/lib/main.js:

var tag = "p";
var data = require("sdk/self").data;
var pageMod = require("sdk/page-mod");

pageMod.PageMod({
  include: "*.mozilla.org",
  contentScriptFile: data.url("element-getter.js"),
  onAttach: function(worker) {
    worker.port.emit("getElements", tag);
    worker.port.on("gotElement", function(elementContent) {
      console.log(elementContent);
    });
  }
});

/data/element-getter.js:

self.port.on("getElements", function(tag) {
  var elements = document.getElementsByTagName(tag);
  for (var i = 0; i < elements.length; i++) {
    self.port.emit("gotElement", elements[i].innerHTML);
  }
});

其他人都在嘲笑那个人的时候,这是一个很棒的解决方案。谢谢!直接链接到特定指南也很棒! - Noitidart

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