网络爬虫简介

四叶草 2019-12-19

爬虫简介:

网络爬虫是按照一定的规则,自动的抓取万维网信息的程序或者脚本。

各编程语言编写爬虫程序:

1,PHP:PHP是世界是最好的语言,但他天生不是做这个的,而且对多线程、异步支持不是很好,并发处理能力弱。爬虫是工具性程序,对速度和效率要求比较高。

2,Java:生态圈很完善,是Python爬虫最大的竞争对手。但是Java语言本身很笨重,代码量很大。重构成本比较高,任何修改会导致代码大量改动。爬虫经常要修改采集代码。

3,C/C++:运行效率是无敌的。但是学习和开发成本高。写个小爬虫程序可能要大半天时间。

4,Python:语法优美、代码简洁、开发效率高、支持的模块多。相关的HTTP请求模块和HTML解析模块非常丰富。还有Scrapy和Scrapy-redis框架让我们开发爬虫变得异常简单。

爬虫分类:

1,通用爬虫:通用爬虫是搜索引擎抓取系统的重要组成部分,主要是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份。

2,聚焦爬虫:聚焦爬虫指针对某一领域根据特定要求实现的爬虫程序,抓取需要的数据(垂直领域爬取)

聚焦爬虫设计思路:

1,确定爬取的url,模拟浏览器向服务器发起请求;

2,获取响应数据并进行数据解析;

3,将目标数据持久化到本地;

请求:

由客户端向服务器发出的,可以分为四部分内容:

1,请求方法:request method

2,请求网址:request URL

3,请求头:request headers

4,请求体:request

requests请求的8种方法:

1,GET:请求页面,并返回页面内容;

2,POST:用于提交表单数据或上传文件 ,数据包含在请求体中;

3,PUT:从客户端向服务器传送的数据取代指定文档中的内容;

4,DELETE:请求服务器删除指定的页面;

5,HEAD:类似于GET请求,只不过返回的响应中没有具体的内容,用户获取报头

6,CONNECT:把服务器当做跳板,让服务器代替客户端访问其他网页;

7,OPTIONS:允许客户端查看服务器的性能;

8,TRACE:回显服务器收到的请求,主要用于测试或诊断;

GET与POST请求的区别:

1,GET请求中的参数包含在url里面,数据可以在url中看到,而POST请求的url不会包含这些数据,POST数据都是通过表单形式传输的,会包含在请求体中

2,GET请求提交的数据最多只有1024字节,而POST方式没有限制

3,POST请求比GET请求相对安全

相关推荐