解析HTML中的Javascript变量

时间:2016-04-27 15:39:55

标签: javascript node.js cheerio

我正在抓取一个页面,我需要从脚本标记中获取所有变量及其值。

我使用request-promise获取HTML页面,cheerio获取脚本标记的内部。

我尝试使用UglifyJS.parse来解析javascript,但我不知道如何获取这些变量的值。

var request = require('request-promise');
var cheerio = require('cheerio');
var UglifyJS = require("uglifyjs");


request({
    url: 'http://example.com'
}).then(function(data) {
    var $ = cheerio.load(data);

    var scriptInsides = $('script').last().html();

    var parsed = UglifyJS.parse(scriptInsides);

    // Does not show all variables (some are inside $JQ ready functions)
    // And I only get the variables, don't know how to get the values
    // variableOne is (var variableOne) and it's an object which I want to fetch 
    console.log(parsed.variables._values.variableOne);
}, function(err) {
    console.log(err);
});

0 个答案:

没有答案