可怜的博主终于熬过了考试周…半条命都没了…跪求下学期开学,别再上网课了,真管不住自己(手动狗头)
考试周期间有很多“悔不当初”,不再一一列举,但其中有一条就是这学期的python课真的太水了,学了一学期啥也不会…所以,打算暑假啃一本《Python网络爬虫从入门到实践》。这一系列博客的内容呢将是我在学习过程中的笔记。
此专题所用的开发语言为 Python3
什么是爬虫?
某百科上是这样介绍爬虫的:网络爬虫(又称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。
就我个人生活经历来看,爬虫是个相当有用的东西,无论是办公整理信息、数据,还是学生党查找一些资料都用得上。反正当别人还在手动查找、下载、整理搜索结果的时候,咱们爬虫早把工作做完了,可以大幅提高学习、工作的效率,无论各位是否在打算将来就职于互联网开发行业,编写简单的网络爬虫都是值得一学的一个技能。
而在即将到来的5G时代,数据的爆发式增长是必然的,只要使用互联网就会涉及各种各样的数据的交换,学会运用网络爬虫技术爬取所需信息,是数据处理的第一关。
这玩意儿合法吗?
就目前来看,我国有关爬虫的法律并不完善,但还是要注意的,涉及个人使用或科研使用的爬虫并不违法,但只要跟商业盈利沾边,大家就一定要仔细斟酌一下了。
记得这学期的python老师刚讲到爬虫时,说的第一件事不是如何编写代码,而是安全性问题,因为,这个爬虫一个不小心,很容易违法的,各位可以随便百度,因为爬虫而被判刑的人其实还比较多,而且很多人都不是故意违法的,只是缺乏这方面意识,一个好奇心就把自己害死了不是。所以在日后敲代码的时候,一定要注意,不要爬取别人的隐私数据、商业数据等等,咱们纯粹是为了学习和提升核心竞争力,没必要把人搭进去哈。
有关具体的安全性问题,Robots协议(网络爬虫排除标准)已经有了详细说明,大家可以在需要的时候,自行查看。请大家在练习或应用爬虫时,务必遵守这个协议。
另外,我们自己在使用时也要注意不要爬去过多的数据量,而且也要限制爬取数据的速度,不然很容易被误认为恶意攻击,一方面会影响自己的爬虫学习,另一方面也会给被爬网站增加负担。
爬虫的基本流程
- 获取网页:给被爬网址发送请求,随后该网址会返回整个网页的数据。爬虫和反爬的斗争一般都会发生在这一步。经常使用的有requests、urllib。
- 解析网页:从整个网页的数据中提取出自己想要的数据,常用的方法有有正则表达式、beautifulsoup包。
- 存储数据:一般会存在csv文件中,更高阶的方法是存储在数据库里。
- 话不多说,请各位读者阅读本专栏中的一起学爬虫(二)九行代码的简单爬虫,开始咱们的爬虫学习吧。