如何在外部网页中查找特定内容

时间:2015-12-04 11:54:58

标签: javascript node.js

我基本上是在尝试使用Javascript和Node.js服务器来检查网站数组是否包含我正在寻找的内容。我不介意是否需要JQuery,只是不确定如何解决这个问题。例如,网站“www.skysports.com”和“www.bbc.co.uk”是否在其网站的可见内容中的某处具有“足球”一词。是否应该通过源代码运行方法来完成?

网站列表将被扩展,因此希望将一组网站传递给一个方法,然后将结果传递给显示true或false的表。

if (
(
document.documentElement.textContent || document.documentElement.innerText
).indexOf('Football') > -1
) {
  return true
}
else {
  return false
}

这是我到目前为止所做的,虽然我知道这只适用于内部文档,我想如果我下载外部网站的源代码,我可以运行这样的东西代码?

2 个答案:

答案 0 :(得分:0)

您是否尝试过运行jQuery $.get("http://www.domain.com");函数?

jQuery.get()

答案 1 :(得分:0)

这样的事情应该让你开始:

var http = require('http');

function checkSites(sites, keyword) {
  sites.forEach(function(site) {
    var request = http.request({host: site}, function (res) {
      var html = '';
      res.on('data', function (chunk) {
        html += chunk;
      });
      res.on('end', function () {
        console.log(site, html.indexOf(keyword) > -1);
      });
    }).end();
  });
}

checkSites(['www.skysports.com', 'www.bbc.co.uk'], 'Football');

那只是检查html。老实说,你可能应该使用像zombie js之类的东西来渲染每个网站的html / javascript,然后查看内容。