学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓

qq1622479435 2018-10-06

编程语言 python 数据分析 编程 html

怎样学编程

编程就如同你学习开车,即使,你可以一口气,说出一辆车的全部零部件,以及内燃机进气、压缩、做功和排气过程,但你就是不去练如何开车,怎么上路。你确定,你敢开吗?你敢开,我也不敢坐。

学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓

 

同样地,学十几年的英语,应该也有10000 h+,按照一万小时定律,你我英语水平应该都不错,至少能和老外谈笑风生了吧!

实际呢?面对漂亮的金发女郎,你不敢说,缺乏自信,怕嘲笑,中式英语,说一句想十句。妹子撩不到,反而成为笑柄。

英语面试时,灵活的问题让你力不从心,之前的准备,全部成泡影。最终,专业面过,却死在英语上,不能得到心仪工作。多么可惜!

学习编程、开车和英语,都有一个共同特征:需要不断练习,练习,再练习。最终,达到,像卖油翁一样境界。我亦无他,惟手熟尔!

掌握一门新技能,上课只能吸收10%,与人交流吸收20%,大量练习才能掌握70%。这就是著名的721定律。

初识python

2018年某一天,python突然变得很火。媒体宣传学习python的巨大好处与前景。原因很简单,人工智能将python推向了顶峰。

一时间,全民编程的浪潮此起彼伏。python 列入全国计算机二级取代VB,部分城市试点,python引入高中。互联网时代,已经离不开编程。

爬虫、开发网页、开发游戏、数据分析几大用途映入眼帘。第一次听说爬虫,倍感好奇。曾猜想,编一个蜘蛛出来,什么鬼?查阅后才知道,通过程序,爬取网页数据,达到数据收集目的。

学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓

 

此时,脑洞大开,放只爬虫,游离于互联网,爬取最热图书、最热电影、批量下载图片和歌曲和招聘信息等等。

这是多么有意思事情。想到这个,不免会心一笑。但是,一想到,大一C语言的黑历史,就只能,呵呵!

大一编程学那么差,都挂科了,50分啊!时隔9年,你觉得,编程小白,能学会的概率有多少,别搞笑了,好吗?

这是充满否定和鄙视的挑衅。(我怎么可以这么说自己!)如果,换成以前的我,我会认怂。是的,我不敢跨越黑历史,我不敢揭开那伤疤,我不想被嘲笑,我怕失败。

但是,现在的我,却发生巨大变化。认知的提升,思维的转变,一个新的指南针,在迷茫中,给我方向。

感谢那些,曾陪我度过孤单岁月的鸡汤、励志、认知和思考类的书籍。

保持学习新知识的能力,将成为今后快速迭代升级必备能力。多一个技能,多条路。用20%的时间,掌握一个技能的80%,就是胜利。记不清在哪,看过这样一句话,不管有多难,请把自己活成一支军队。

如何用有限的班后时间,做到入门爬虫这个技能,是我当前的主要目标。我清楚,我不需要花大量时间和精力,让它如数家珍。

因为,我不是专业出身,我已经不在年轻,能扛得住N年码代码的身心俱疲。毕竟,中年危机就在不远的5-6年。码代码,最后,拼的也是身体!

python学习之路

学习python最好方法,就是以练带学,不断思考和总结。

上课,过一遍基础知识点

对于小白的我来说,一定要先过一遍基础知识,了解这个语言的语法规则和结构,比如,常用的列表、字典等的用法。

建议通过视频学习,这样不但节省时间,而且效果很好。

学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓

 

上课,过一遍爬取流程

在熟悉基本基础后,就可以了解爬虫的基本模块,以requests和beautifulsoup为例。

Requests用来下载html 到本地,也就是网页源代码。Beautifulsoup用来解析html,使用css选择器,选取指定的信息(如:评论、阅读量等等)。

最后,将爬取信息,保存在txt和csv格式,用于后续数据分析。这份信息汇总,包含你需要的所有内容。

做项目,练习总结

在掌握流程和基本知识以后,就可以实战做项目。在做第一个项目时,问题一定特别多,不要急。这是一个快速爬坡的过程。能否回忆起那个陡峭的学习曲线?问题越多,学的越快。

我做的第一个项目,爬取豆瓣不同标签下最热书单,最终生成词云图(目前,阅读量2800+,感谢大家的支持)。

在本次实战中,问题真是,接连不断,非常打击自信心。自己问过了,无力。度娘问过了,无解。大神问过了,不理。

清晰记得,好几个晚上,毫无进展,停滞不前。对着闪动的光标发呆,写了删,删了写,不断报错,无法debug。

一晚上,碌碌无为,无奈、无助和无解,换来疲惫的身体和大脑。怀疑人生,似乎变得更加有意义。

这些问题,你是否也遇到过?

1)CSS就是选择不上需要内容,输出结果,不是空,就是空!html代码,看得云里雾里。

2)爬下来html一堆乱码,csv结果无法识别,又是乱码,全是乱码,你大爷的,抓狂心都有了。

3)爬一半,报错,无法解码,index 出错,各种错,你错上瘾了,是吧!

4)爬取下来,列表里面数字,无法进行列表的乘除运算,已经int()过,怎么破!

5)代码没变,刚才还能爬下内容,过一会,一个毛也爬不下来,什么情况啊!一下午,就这么浪费了,砸电脑的心的都有。

第一个项目,往往是最难的,但也是刻骨铭心的。流程不熟悉,结构不了解,体系不全面,知识碎片,散落一地,没有形态,真是一地鸡毛。

但就在这种让人近乎绝望的情况下,各个知识之间的关系,逐渐清晰起来,一张知识网逐渐形成。加把劲,这才刚刚开始。

在此基础上,还需要做2件事情,会帮助完善,这张独一无二的知识网,并且越来越密,却来越结实。

出报告

每完成一个项目,总结报告,必不可少。一份报告记录这个任务的目的、分析过程和结论,其中,很多细节,将帮助你,加深对项目的理解,以及相关知识的应用。梳理框架,对后续类似项目都有指导意义。

先注重流程逻辑,再考虑设计,不断思考去完善。报告,教程,作品,它们之间的距离,会越来越模糊,你的个人品牌,会越来越显著。

学习python12小时后,告诉想学爬虫的你,别怕,爬虫,没那么难抓

 

总结,搭建知识网络

仔细回忆做项目的过程,拿出纸笔记录流程,几个项目下来,你的项目网络框架就基本搭建完成。

其中,高频知识点,将通过这张网有逻辑地链接起来,它们彼此之间,具有很强的相关性。

还记得初中化学,学过的化学分子结构吗?碳原子通过单键、双键和三键彼此连接,键越多,越难断裂。

知识点彼此连接,越紧密,越难忘记。这就解释了,为什么你孤立地学习一些知识,很容易忘记,真正用的时候完全想不起来的原因。

就拿爬虫为例,在爬取网页时,

(1)需要html中css的知识,找出对应内容的css选择器;

(2)需要列表的知识,将爬取下来的内容,分别存放在不同的列表中;

(3)需要字符串的知识,剔除爬取下来的无用信息等等。

孤立的学习这些知识,顶多让你知道它是什么,仅此而已。而不会知道,在什么情况使用,以何种逻辑关系相互连接。

结构化学习,才是你我需要真正培养的能力。

我刚整理了一套2018最新的0基础入门和进阶教程,无私分享,加python学习qun:227-435-450 即可获取,内附:开发工具和安装包,以及系统学习路线图

f12415b73e1ca135a6f723c4e5b5042818c4c776


登录 后评论
下一篇
corcosa
14086人浏览
2019-10-08
相关推荐
数据分析-从入门到崩溃
827人浏览
2017-10-20 08:56:00
都是爬虫惹的祸
1095人浏览
2018-10-29 11:58:00
python学习(1)启程
882人浏览
2016-02-29 13:23:00
爬虫进阶:Scrapy入门
895人浏览
2018-09-01 21:42:00
0
1
0
1274