使用 Node.js爬虫入门学习

robots协议

Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。它是一个Robots.txt文件

User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符 
禁止所有搜索引擎访问网站的任何部分
User-agent: * //
Disallow: /
不允许百度的机器人访问其网站下其所有的目录
User-agent: baiduspider
Disallow: /
User-agent: * 这里的*代表的所有的搜索引擎种类,*是一个通配符
Disallow: /admin/ 这里定义是禁止爬寻admin目录下面的目录
Disallow: /require/ 这里定义是禁止爬寻require目录下面的目录
Disallow: /ABC/ 这里定义是禁止爬寻ABC目录下面的目录
Disallow: /cgi-bin/*.htm 禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。
Disallow: /*?* 禁止访问网站中所有包含问号 (?) 的网址
Disallow: /.jpg$ 禁止抓取网页所有的.jpg格式的图片
Disallow:/ab/adc.html 禁止爬取ab文件夹下面的adc.html文件。
Allow: /cgi-bin/ 这里定义是允许爬寻cgi-bin目录下面的目录
Allow: /tmp 这里定义是允许爬寻tmp的整个目录
Allow: .htm$ 仅允许访问以".htm"为后缀的URL。
Allow: .gif$ 允许抓取网页和gif格式图片
Sitemap: 网站地图 告诉爬虫这个页面是网站地图

NODE.JS 爬虫(spider)

创建项目文件夹:"爬虫系统"

cd ~"爬虫系统" 

npm init //先安装node.js 并配置

使用npm命令安装插件 express, request,cheerio

package.json:

{
  "name": "",
  "version": "",
  "dependencies": {
    "cheerio": "^1.0.0-rc.2",
    "express": "^4.16.3",
    "request": "^2.87.0"
  }
}

命令安装:supervisor 监控node.js 运行状态

npm install -g supervisor

  

创建test.js

var express = require('express');
var app = express();
var request = require('request');
var cheerio = require('cheerio');
app.get('/', function (req, res) {
   	
 	request('https://mp.csdn.net', function (error, response, body) {
 		if (!error && response.statusCode == 200) {
	  		var $ = cheerio.load(body);
			res.send($.html());
 		}
	});
})
 
var server = app.listen(8081);

使用命令 node test.js运行 

cheerio 库将整个网页的body转为$符,

res.send($.html());是将整个网页返回并显示.


猜你喜欢

转载自blog.csdn.net/zhjw1991/article/details/80606842