Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正在删除html页面结果。。顺序不对_Javascript_Node.js_Web Scraping_Cheerio - Fatal编程技术网

Javascript 正在删除html页面结果。。顺序不对

Javascript 正在删除html页面结果。。顺序不对,javascript,node.js,web-scraping,cheerio,Javascript,Node.js,Web Scraping,Cheerio,我正在尝试使用cheerio js从该页面获取数据: var html = "<div class='clear'>" + "<div class='time_head'>time_head content1</div>" + "<div class='blockfix'>blockfix1</div>" + "<div class='blockfix'>blockfix2</div>" + "<div c

我正在尝试使用
cheerio js
从该页面获取数据:

var html =
"<div class='clear'>" +
"<div class='time_head'>time_head content1</div>"
+ "<div class='blockfix'>blockfix1</div>"
+ "<div class='blockfix'>blockfix2</div>"
+ "<div class='time_head'>time_head content2</div>"
+ "<div class='blockfix'>blockfix3</div>"
+ "<div class='blockfix'>blockfix4</div>"
+ "<div class='blockfix'>blockfix5</div>"
+ "</div>";
结果是:

[ 
  { title: 'time_head content1time_head content2',
    game: 'blockfix1blockfix2blockfix3blockfix4blockfix5' } 
]
但是我需要每一个
时间头
和它的
区块补丁

TIME_HEAD CONTENT1
   ----blockfix1
   ----blockfix2
TIME_HEAD CONTENT2
   ----blockfix3
   ----blockfix4
请注意: 1-时间头的数量总是变化的
2-我对其他解决方案持开放态度

使用
获取所有元素。time\u head
,在其上迭代,应用while循环,直到下一个元素具有类
blockfix

const输出=[];
$('.time_head')。每个(函数(i){
让next=$(this.next('.blockfix');
push({“title”:$(this.text(),game:[]});
while(下一个){
输出[i].game.push(next.text());
const isNext=$(next).next('.blockfix');
next=isNext.length>0?$(next).next('.blockfix'):false;
}
});
控制台日志(输出)

时间头内容1
区块修正1
区块修正2
时间2
区块修复3
区块修复4
区块修复5

而不是应用循环覆盖
。清除
选择
time\u head
。使用
time\u head
时,结果为空。。谢谢你。。看看这个问题:
TIME_HEAD CONTENT1
   ----blockfix1
   ----blockfix2
TIME_HEAD CONTENT2
   ----blockfix3
   ----blockfix4