Javascript Express and Cheerio/JSDOM
我想让Cheerio和Express一起工作。 我希望能够从服务器上操作dom,但我所发现的只是web抓取 有一些要求 目前,我能够运行多个Javascript Express and Cheerio/JSDOM,javascript,node.js,dom,express,cheerio,Javascript,Node.js,Dom,Express,Cheerio,我想让Cheerio和Express一起工作。 我希望能够从服务器上操作dom,但我所发现的只是web抓取 有一些要求 目前,我能够运行多个app.listen(端口)语句,并使用多个服务器 我正在尝试将警报(“测试”);附加到express发送的每个页面 我已经创建了express服务器:(假设Path是一个预定义的变量) 你们能给我提供一个工作示例来将它附加到页面上吗?有没有办法让它实时工作 谢谢!下面是一个没有错误处理的快速/简单示例: var express = require('exp
app.listen(端口)代码>语句,并使用多个服务器
我正在尝试将警报(“测试”);
附加到express发送的每个页面
我已经创建了express服务器:(假设Path
是一个预定义的变量)
你们能给我提供一个工作示例来将它附加到页面上吗?有没有办法让它实时工作
谢谢!下面是一个没有错误处理的快速/简单示例:
var express = require('express');
var fs = require('fs');
var cheerio = require('cheerio');
var app = express();
app.get('/', function (req, res) {
fs.readFile(Path + '/index.html', function(err, data) {
var $ = cheerio.load(data);
$('body').append('<script>alert("test");</script>');
res.send($.html());
});
});
app.listen(Port);
var express=require('express');
var fs=需要('fs');
var cheerio=需要('cheerio');
var-app=express();
app.get('/',函数(req,res){
fs.readFile(Path+'/index.html',函数(err,data){
var$=cheerio.load(数据);
$('body').append('alert(“test”);');
res.send($.html());
});
});
app.listen(端口);
我只是在本地进行了测试,结果正如预期的那样。请确保在实际实现中测试readFile
回调中的err
,如果找不到文件或读取文件时出错,请妥善处理。Cheerio肯定可以做到这一点。到目前为止,您做了哪些尝试?您遇到了哪些问题、错误等遇到?问题是我没有找到任何示例代码…因此我不确定从何处开始..添加了一个简单的示例。希望这能让您朝着正确的方向前进。我能做什么:app.use('/',express.static(Path));在顶部?@medemi68:您可以使用静态模块,但我认为这不会自动为由静态处理的请求运行。如果您想要包含此注入代码的类似于静态的内容,您可能需要编写自己的模块。此外,您也可以在路由中使用通配符,如/*.html
,以e这运行一系列不同的URL。许多选项。
var express = require('express');
var fs = require('fs');
var cheerio = require('cheerio');
var app = express();
app.get('/', function (req, res) {
fs.readFile(Path + '/index.html', function(err, data) {
var $ = cheerio.load(data);
$('body').append('<script>alert("test");</script>');
res.send($.html());
});
});
app.listen(Port);