一、爬虫基本概念:
1.通过编写程序,模拟浏览器上网,然后让其去互联网上抓取数据的过程。
2.实现爬虫的主流编程语言及缺点:
(1)PHP:对多线程、多进程的支持不好
(2)Java:代码臃肿,重构成本较大
(3)C/C++:是一个非常不明智的选择,学习成本高,使用难度大,很装X
(4)PYTHON:几乎没有缺点!!!代码优雅,学习成本低,具有非常多的模块,并具有框架的支持:Scrapy
3.使用场景(分类)
(1)通用爬虫:是搜索引擎中“抓取系统”的重要组成部分。(爬取的是整张页面)
搜索引擎如何抓取互联网的网页?
1)门户主动将自己的url提交给搜索引擎公司
2)搜索引擎公司会和DNS服务商进行合作
3)挂靠知名网站的友情链接
(2)聚焦爬虫:根据指定的需求去网上爬去指定的内容
4.robots.txt协议:指定的是门户中哪些数据可以供爬虫程序进行爬取和非爬取
5.反爬虫:门户网站可以通过某些技术手段或者策略阻止爬虫程序对其数据的爬取
6.反反爬虫:爬虫程序通过某些技术手段或者策略破解门户网站的反扒策略
二、http和https
1.http:HTTP协议就是服务器(Server)和客户端(Client)之间进行数据交互(相互传输数据)的一种形式。我们可以将Server和Client进行拟人化,那么该协议就是Server和Client之间指定的一种交互沟通方式
2.Request:
常见的请求头:
- accept:浏览器通过这个头告诉服务器,它所支持的数据类型
- Accept-Charset: 浏览器通过这个头告诉服务器,它支持哪种字符集
- Accept-Encoding:浏览器通过这个头告诉服务器,支持的压缩格式<