Есть ли какая-либо java script структура веб-искателя

Есть ли какая-либо инфраструктура веб-искателя JavaScript?

Ответы

Ответ 1

Появилась новая фреймворк, который был только выпущен для Node.js, называемый spider. Он использует jQuery под капотом для сканирования/индексирования HTML-страниц веб-сайта. API и конфигурация действительно приятны, особенно если вы уже знаете jQuery.

Из набора тестов здесь приведен пример обхода веб-сайта New York Times:

var spider = require('../main');

spider()
  .route('www.nytimes.com', '/pages/dining/index.html', function (window, $) {
    $('a').spider();
  })
  .route('travel.nytimes.com', '*', function (window, $) {
    $('a').spider();
    if (this.fromCache) return;

    var article = { title: $('nyt_headline').text(), articleBody: '', photos: [] }
    article.body = '' 
    $('div.articleBody').each(function () {
      article.body += this.outerHTML;
    })
    $('div#abColumn img').each(function () {
      var p = $(this).attr('src');
      if (p.indexOf('ADS') === -1) {
        article.photos.push(p);
      }
    })
    console.log(article);
  })
  .route('dinersjournal.blogs.nytimes.com', '*', function (window, $) {
    var article = {title: $('h1.entry-title').text()}
    console.log($('div.entry-content').html())
  })
  .get('http://www.nytimes.com/pages/dining/index.html')
  .log('info')
  ;

Ответ 2

Попробуйте PhantomJS. Не совсем сканер, но может быть легко использован для этой цели. Он имеет полностью функциональный встроенный движок WebKit, способный сохранять скриншоты и т.д. Работает как простой интерпретатор JS командной строки.