Я создаю парсер с помощью spookyjs: https://github.com/WaterfallEngineering/SpookyJS
Я создал новый жуткий объект и пытаюсь оценить функцию, которая возвращает содержимое определенного тега html. Ради удобочитаемости я пытаюсь использовать функцию (returnDataFromSelector()), чтобы делать это каждый раз. Однако, когда я передаю функцию через оценку, она возвращает ноль.
Когда я использую анонимную функцию, она работает правильно. Как я могу заставить функцию returnDataFromSelector работать правильно?
spooky.then(function() {
function returnDataFromSelector(selector) {
return function () {
return document.querySelectorAll(selector)[0].innerHTML;
}
}
var pageData = {};
pageData.projectName = this.evaluate(returnDataFromSelector('a.green-dark')); // returns null
pageData.projectName = this.evaluate(function () { return document.querySelectorAll('a.green-dark')[0].innerHTML;}); // returns correct string
this.emit('pageData', pageData);
});