1. 爬虫概述
1.1 爬虫概念
爬虫又被称为网页蜘蛛、网络机器人,有时也被称为网页追逐者,是一种按照一定的规则,自动地抓取互联网上网页中相应信息(文本、图片等)的程序或脚本,然后把抓取的信息存储到自己的计算机上。简单来说,爬虫就是抓取目标网站内容的工具,一般是根据定义的行为自动进行抓取,更智能的爬虫会自动分析目标网站结构,类似于搜索引擎的爬虫。
说明:
1.模拟: 用爬虫程序伪装出人的行为, 避免被服务识别为爬虫程序。
2.客户端: 浏览器, APP都可以实现人与服务器之间的交互行为, 应用客户端从服务器获取数据。
3.自动化: 数据量较小时可以人工获取数据, 但往往在公司中爬取的数据量在百万条, 千万条级别的, 所以要程序自动化获取数据.。
1.2 爬虫语言
爬虫语言:PHP, C/C++, Java, Python,Go
对比:
PHP: 并发能力差, 对多进程和多线程支持不好, 数据量较大时爬虫效率较低
C/C++: 语言效率高, 但学习成本高, 对程序员的技术能力要求较高, 所以目前还停留在研究层面, 市场需求量很小
Java: Python爬虫的主要竞争对手, 由于Java语言的特点, 代码臃肿, 代码量大, 维护成本重构成本高, 开发效率低. 但目前市场上岗位需求比较旺盛.
Python:语法简单, 学习成本较低, 对新手比较友好. Python语言良好的生态, 大量库和框架的支持是的Python爬虫目前处于爬虫圈的主导地位.
1.3 爬虫分类
(1). 通用爬虫
1.通用网络爬虫 是 捜索引擎抓取系统(Baidu、Google、Yahoo等)