很多语言都能写个爬虫抓取数据,js自然也可以,使用cheerio可以支持css检索,较快捷的获取需要的数据。首先,先把node.js给安装了。可到官网下载。安装好node.js后,使用npm安装cheerio。
我这里使用的是win7,可以在 node.js command prompt 里输入
1 npm install cheerio
要注意的是,到项目所在的目录下执行。
接着就可以开发了,使用node.js
http模块并引入cheerio模块,使用get方式获取待抓取的网页内容,具体的解析可以参考https://github.com/cheeriojs/cheerio;
1 var url = "http://www.baidu.com/s?rtt=2&tn=baiduwb&rn=20&cl=2&wd=%BA%A3%D4%F4%CD%F5"
2 var http = require("http");
3 // Utility function that downloads a URL and invokes
4 // callback with the data.
5 function download(url, callback) {
6 http.get(url, function(res) {
7 var data = "";
8 res.on(‘data‘, function(chunk) {
9 data += chunk;
10 });
11 res.on("end", function() {
12 callback(data);
13 });
14 }).on("error", function() {
15 callback(null);
16 });
17 }
18 var cheerio = require("cheerio");
19 download(url, function(data) {
20 if (data) {
21 var $ = cheerio.load(data);
22 //id为weibo里的所有li,每个li里的段落p的内容
23 $(‘#weibo‘).find(‘li‘).each(function(i, elem) {
24 console.log($(this).find(‘p‘).text());
25 console.log(" ");
26 })
27 }
28 else
29 console.log("error");
30 });
保存为print.js,运行命令执行print.js
1 node print.js
数据获取成功:
时间: 2024-08-25 00:09:58