我正在测试 Apify 网络抓取工具,我能够看到结果,但它显示在一行中。我正在迭代内容以从此页面获取标题 - ...并将其推送到数组并最终返回数组。我希望看到标题在单独的行中返回。如果有人能指出我正确的方向,我将非常感激。
这是我的页面功能:
async function pageFunction(context) {
// jQuery is handy for finding DOM elements and extracting data from them.
// To use it, make sure to enable the "Inject jQuery" option.
const $ = context.jQuery;
var results = [];
$('.ms-srch-group-content').each(function(){
results.push({
title: $(this).find('.ms-srch-item-link').text().trim(),
date: $(this).find('.soi-news-attributes').text().trim(),
});
});
return results;
}
结果如下: ...
正如您在结果屏幕截图中看到的,所有标题都显示在一行中。
最佳答案
这里的问题是您试图迭代元素本身,而您想要实现的目标需要向下移动一级。
也就是说 - 您只需将 .ms-srch-group-content
更改为 .ms-srch-group-content > div[name=Item]
它会按预期工作。
关于javascript - Apify 数组结果显示在一行而不是单独的行中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61533672/