Node JS - 将VAR从数组中拉出来

时间:2017-04-12 14:58:34

标签: javascript node.js web-scraping cheerio

我试图从网站上删除数据。返回给我的是一个看起来像的数组。

var $ =  cheerio.load(body)

返回:

{ [Function]
  fn:
   { constructor: [Circular],
     _originalRoot:
      { type: 'root',
        name: 'root',
        attribs: {},
        children: [Object],
        next: null,
        prev: null,
        parent: null } },
  load: [Function],
  html: [Function],
  xml: [Function],
  text: [Function],
  parseHTML: [Function],
  root: [Function],
  contains: [Function],

孩子对象就是我追求的......

var obj = $.root()[0]

返回:

{ type: 'root',
  name: 'root',
  attribs: {},
  children:
   [ { data: 'var usdata_real = {     // All_data node opens\n\n\tATL: {     // Country tag opens\n\t\tid: "ATL",\n\t\t\tdata: {     // Data node begins\n\t\t\tq1_1980: 169.304888373489,\n\t\t\tq2_1980: 164.585093140904,\n\t\t\tq3_1980: 166.167521028595,\n\t\t\tq4_1980: 163.
....

我想要这个数组中的'数据'。

obj = obj['children'][0]['data']

返回:

var usdata_real = {     // All_data node opens

        ATL: {     // Country tag opens
                id: "ATL",
                        data: {     // Data node begins
                        q1_1980: 169.304888373489,
                        q2_1980: 164.585093140904,
                        q3_1980: 166.167521028595,
                        q4_1980: 163.040844286677,
                        q1_1981: 163.31019903107,
                        q2_1981: 162.449966027231,
                        q3_1981: 158.719442789479,
                        q4_1981: 162.744884934737,
.....

几乎是完美的。除了它返回给我一个没有bueno的数组。我希望能够将此视为一个对象,所以我可以做一些像

这样的事情
obj['ATL'] 

并获得KEY / VALUE对。

所以我的问题......

是否可以剥离此数组中的对象('var usdata_real')。因为那就是我所追求的。

任何提示将不胜感激。

谢谢!

0 个答案:

没有答案