爬虫查看源代码讨论查看历史
爬虫 |
中文名: 网络爬虫 外文名: web crawler 别 称: 网络蜘蛛 目 的: 按要求获取万维网信息 作 用 :抓取网站上的信息 算 法:网络拓扑、基于网页内容和基于 |
爬虫:(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。[1]
爬虫的概念
爬虫更官方点的名字叫数据采集,英文一般称作spider,就是通过编程来全自动的从互联网上采集数据。
比如说搜索引擎就是一种爬虫。 爬虫需要做的就是模拟正常的网络请求,比如你在网站上点击一个网址,就是一次网络请求。
爬虫的作用
现如今大数据时代已经到来,网络爬虫技术成为这个时代不可或缺的一部分,企业需要数据来分析用户行为,来分析自己产品的不足之处,来分析竞争对手的信息等等,但是这些的首要条件就是数据的采集。 这其中使用爬虫较为有名的有今日头条等公司。[2]
爬虫的分类
根据被爬网站的数量的不同,我们把爬虫分为:
通用爬虫 :通常指搜索引擎的爬虫(https://www.baidu.com)
聚焦爬虫 :针对特定网站的爬虫
爬虫的流程
爬虫的工作流程(重点)
总结: 搜索引擎流程 与 聚焦爬虫流程的区别: 搜索引擎流程:
爬取范围: 整个网络, 见到URL就爬保存的数据: 保存的是原始的HTML预处理: 主要是 分词, 排名
聚焦爬虫流程
爬取范围: 特定的URL, 只有有需要的数据的URL,才爬取保存的数据: 保存的是需要的数据.[3]
爬虫的本质
爬虫的本质就是自动化的去模拟正常人类发起的网络请求,然后获取网络请求所返回的数据。 跟我们人手动去点击一个连接,访问一个网页获取数据,并没有什么本质的区别。
爬虫的难点
爬虫的难点主要为两个方向:
数据的获取
一般来说我们想要抓取的网站是不希望我们去抓取他的数据的,那么这些网站就会做一些反爬虫的措施,来让我们无法去他的网站上抓取数据。所以我们也要做相应的措施去绕过这些反爬虫措施。
抓取数据的速度
我们抓取的目标的数据量,有时是非常庞大的,甚至几千万上亿的数据量,而有些甚至会要求实时的更新,所以抓取的速度也非常重要。我们一般会使用并发和分布式来解决速度的问题。
视频
Python基础教程:零基础入门爬虫
六分钟了解爬虫项目的大概过程
参考资料
- ↑ 让你从零开始学会写爬虫的5个教程(Python),实验楼 - 博客园
- ↑ 爬虫学习之一个简单的网络爬虫,Chenkun - 博客园
- ↑ 网络爬虫基本原理(一),wawlian - 博客园