gpt4 book ai didi

node.js - Web Scrape Meteor 页面

转载 作者:搜寻专家 更新时间:2023-10-31 23:35:36 24 4
gpt4 key购买 nike

我正在尝试编写一个抓取 meteor 网页的应用程序。这相当困难,因为 meteor 网页最初完全呈现为 Javascript。有没有什么方法可以用某种刮刀来呈现页面?

如果有帮助的话,可能会用 node 来做。

谢谢

最佳答案

您可以使用 phantomjs 来呈现网页。这是一个示例,专门为 meteor 网页设计,(来自 spiderable)以捕获其 HTML:

var fs = require('fs');
var child_process = require('child_process');

console.log('Loading a web page');

var page = require('webpage').create();

page.open("http://localhost:3000", function(status) {

});

var i = 0;

setInterval(function() {
var ready = page.evaluate(function () {
if (typeof Meteor !== 'undefined'
&& typeof(Meteor.status) !== 'undefined'
&& Meteor.status().connected) {
Deps.flush();
return DDP._allSubscriptionsReady();
}
return false;
});

console.log("Ready", ready);

if (ready) {
var out = page.content;
console.log(out);
phantom.exit();
}
}, 100);

这是这种方式,但您可以包装输出并使用 require('child_process').execstdin 捕获它。

您可以使用 phantomjs script.js 运行代码,它会返回 meteor 页面的 HTML。

关于node.js - Web Scrape Meteor 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24947580/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com