记录一下我自己从零开始写python爬虫的心得吧!
我刚开始对爬虫不是很了解,又没有任何的计算机、编程基础,确实有点懵逼。从哪里开始,哪些是最开始应该学的,哪些应该等到有一定基础之后再学,也没个清晰的概念。
因为是 Python 爬虫嘛,Python 就是必备的咯,那先从 Python 开始吧。于是看了一些教程和书籍,了解基本的数据结构,然后是列表、字典、元组,各种函数和控制语句(条件语句、循环语句)。
学习一门学科的时候是要清楚它的知识框架才能清晰的学习、有系统的学习,下面来列一列python网络爬虫的知识框架来帮助大家能够有效的学习和掌握,避免不必要的坑。
学了一段时间,才发现自己还没接触到真正的爬虫呢,而且纯理论学习很快就忘了,回去复习又太浪费时间,简直不要太绝望。把 Python 的基础知识过了一遍之后,我竟然还没装一个可以敲代码的IDE,想想就哭笑不得。
零基础学习爬虫,坑确实比较多,总结如下:
1.环境配置,各种安装包、环境变量,对小白太不友好;
2.缺少合理的学习路径,上来 Python、HTML 各种学,极其容易放弃;
3.Python有很多包、框架可以选择,但小白不知道哪个更友好;
4.遇到问题甚至不知道如何描述,更不用说去寻找解决办法;
5.网上的资料非常零散,而且对小白不友好,很多看起来云里雾里;
6.有些东西看似懂了,但结果自己写代码还是很困难;
……………………
所以跟我一样,很多人爬坑最大的体会是:尽量不要系统地去啃一些东西,找一个实际的项目(从豆瓣这种简单的入手),直接开始就好。
因为爬虫这种技术,既不需要你系统地精通一门语言,也不需要多么高深的数据库技术,从实际的项目中去学习这些零散的知识点,你能保证每次学到的都是最需要的那部分。
当然麻烦的是,在具体的问题中,如何找到具体需要的那部分学习资源、如何筛选和甄别,遇到困难时如何有效解决,是很多初学者面临的大问题。
python网络爬虫总的来说有五个大的方面:
前端知识——基础爬虫——框架爬虫——分布式爬虫——突破反爬虫
1.前端知识:
“网络爬虫”很明显对象是网络,也就是网页。说到网页,这里就涉及到了前端的知识了,不过大家也不要慌,只要懂点必要的HTML5框架、网页的http请求、还有JavaScript、css3的知识就可以了,以这样的水平也是可以学会爬虫的啦。当然,如果要非常精通python网络爬虫的话,深入学习前端知识是必要的。
2.基础爬虫:
(1)基础库:urllib模块/requests第三方模块
首先爬虫就是要从网页上把我们需要的信息抓取下来的,那么我们就要学习urllib/requests模块,这两种模块是负责爬取网页的。这里大家觉得哪一种用的习惯就用哪一种&#