什么是爬虫?
爬虫,在计算机行业中,是一种收集网络数据的工具,有人叫它网络爬虫,亦有人叫它网络蜘蛛。
应用场景举例:
定义听起来有点抽象,咱们来讲几个可能用到爬虫的场景。
1) 小虚朋友是一位互联网从业者,平时爱好观赏和保藏有些自己爱好的美女照片。他想批量下载这些照片存到电脑里,此时候他能够用爬虫搞定;
2)小博是一位数据分析关联的从业人员,他爱好分析数据,例如分析近期房价怎样,近期某些工作的工资怎样。利用爬虫,他能够方便地把原始数据爬下来,进一步用程序进行分析;
3) 小百是一家搜索引擎机构,它需要用海量爬虫收集网络上的数据。仅有这般,当用户在搜索内容的时候,它才晓得返回什么内容;
4)小查是一个查各样机构信息的网站,而这些机构信息都在某些网站进行了公示。小查能够利用爬虫,持续地收集近期的内容,将这些网络上的内容整合起来,再进行加工,从而给用户供给查找相应的服务;
5) 小比是一个比较商品价格走势的应用,它能够从网络上收集关联商品的历史价格,从而供给价格趋势、比价等服务;
这些场景有什么共性吗?
1) 工作量大:收集海量的数据,人工没法胜任;
2) 重复有规律:无论是全网数据,还是特定行业的数据,都能用程序规律描述并实现;
什么内容都能爬吗?
1) 网站不让爬:有有些网站的内容是不准许爬虫进行爬取的,例如某些电商网站上的内容,或有些有版权的音视频内容;
2) 干扰了网站或系统正常运营:用爬虫频繁、密集拜访某个网站,可能会把网站跑挂,这般可能会触犯国家法律;
3) 触及百姓个人信息:例如爬取百姓的身份证等隐私内容,可能亦会触犯国家法律;
为何网上非常多教爬虫编程的?
1) 简单:虽然企业级爬虫需要处理非常多繁杂的问题,然则针对有些小任务,爬虫程序比较简单,且能简单实现,让人有成就感;
2) 有需要:因为非常多互联网应用是基于爬虫的,因此确实有有些关联的研发需要;
我想学爬虫,怎么起始呢?
举荐几个关键词,能够搜索进行学习:
1) 第1周期:python、requests、正则表达式、 BeautifulSoup、lxml
2) 第二周期:scrapy/pyspider
|