2016-09-21 18 views
1

Я пытаюсь очистить список на сайте, который ведет к другим страницам, которые имеют одинаковое форматирование.Узел рентгеновский обход данных из коллекции url

Мне удалось создать коллекцию всех тегов, но когда я пытаюсь посетить коллекцию страниц, ключ, который я пытаюсь создать с ним, не добавляется в мой возвращенный объект.

Вот пример того, что я пытаюсь сделать с переполнением стека:

var Xray = require('x-ray'); 
var x = Xray(); 
x('http://stackoverflow.com/', { 
    title: x(['[email protected]'], 'title'), 
}) (function(err, obj) { 
    console.log(obj); 
}); 

Я ожидал моего obj.title быть список названий всех A HREF страниц, вместо этого я просто получить пустой объект.

Однако, если бы я попытался использовать только первый href, то я получил название без проблем.

var Xray = require('x-ray'); 
var x = Xray(); 
x('http://stackoverflow.com/', { 
    title: x('[email protected]', 'title'), 
}) (function(err, obj) { 
    console.log(obj); 
}); 

Неужели кто-нибудь сталкивался с этой проблемой раньше?

ответ

0

Я столкнулся с этой проблемой до и мое решение выглядит следующим образом:

var Xray = require('x-ray'); 
var x = Xray(); 
x('http://stackoverflow.com/', { 
    title: x('a', [{links:'@href'}]) 
}) (function(err, obj) { 
    obj.forEach(function(links.link) { 
     x(links.link, "title")(function(err, data){ 
       console.log(data) // should print the title 
     }); 
}); 

Позвольте мне знать, если вы столкнулись с проблемами.

+0

Спасибо, что работали для меня! – JoshChang

+0

Тебе больше всего нравится @JoshChang, я рад, что могу помочь. Приветствия. –

+0

Предположим, что obj имеет 50 hrefs. @sudo_mAniac Будет obj.forEach (функция (links.link) { х (links.link, "название") (функция (ERR, данные) {} делают запросы 50 попадают в последовательности .. ?? –

0

Вы можете использовать X-Ray Crawling to anoth site

var Xray = require('x-ray'); 
var x = Xray(); 

x("http://stackoverflow.com/", { 
    main: 'title', 
    image: x('#gbar [email protected]', 'title'), // follow link to google images 
})(function(err, obj) { 
/*