如果你是初学者,对于 Python 语言还不了解,那可以先找一本入门的书看看像《a byte of Python》,
当你对Python语法有点了解了后可以就可以开始自己尝试写一个爬虫程序了,为什么这么早就开始写爬虫程序了呢,原因很简单,你只有在实际项目操作中才能更好的去学会怎么使用Python,着手一个项目对于学习一门语言速度和收获是最快的,你可以先去爬一些静态页面,像爬糗事百科的段子,豆瓣等等。
就以爬取糗事百科为例,这个时候你需要稍微去了解一些HTML标签语言,在w3cschool上可以花个半天熟悉一下,等你熟悉了就以可开始写爬虫程序了,这个时候你就会用到Python标准库中的urllib库去请求一个网页,也就是把网页内容爬下来,爬下来的元素都是文本信息,这个时候你就会用到正则表达式了,你需要用正则表达式去文本信息里提取想要的信息,那怎么快速的找到要提取的信息呢,这个时候你就要学会使用浏览器的F12开发者工具了,你要学习爬虫F12开发者工具是要学会怎么使用的,开发者工具是每个程序员必须要会使用的工具,使用开发者工具你可以查看客户端和服务器端交互的所有信息。
扯远了,当你会用正则表达式提取需要的信息是,这些信息你总得保存下来吧,那这个时候就会逼着你去学会文件的操作,excel的操作,数据库的操作。
当你文档操作也学会了,这个时候你觉得你写得爬虫程序爬取效率不高,那么就会去研究多线程、多进程怎么使用了。
到了这里你基本上把Python的用法反复鞭策过了,这个时候你可以去了解了解HTTP协议,看看HTTP协议怎么规定的,了解过后你可以自己尝试去实现和服务器的交互,这个时候你就会用到socket套接字编程了。
到这里Python的基本用法你都已经很熟悉了,这个时候你就可以使用一些第三方库来帮助你更好的去解析HTML元素,因为HTML是种树状结构的文档。那么BeautifulSoup和lxml库都能帮助你解析HTML文档,学会了使用它让你事半功倍。
静态页面你学会了怎么爬取了,就可以学习怎么去爬动态网页了,selenium,plantomJS这种第三方库你就会去了解, 到这里你就可以去模拟登录操作,你可以去登录你的12306帐号,可以做个购票的爬虫软件,这个时候你会遇到验证码的问题,那就会用到PIL,opencv,ocr等等技术,太多了,不过这些技术你可以先放一放。
到这里你去了解一些爬和反爬的机制了,你要学会去使用ip代理池,控制访问服务器的频率等等。
上面你基本都走了一篇后就可以去学习Scrapy爬虫框架了,分布式爬虫框架,用多台机器同时去爬肯定比你用一台机器去爬快啊。
这个时候你爬取的数量很大了,你想通过数据展示一些信息,帮助你做决策,这个时候你就要学会是用numpy, pandas,matplotlib,做一些数据清洗,得到比较干净的数据,到这里你多练习练习差不多就能多数据挖掘的工作了。
学习是个持续输入输出的过程你一定要有耐心,沉下心来,努力专研,成就大神不是一朝一夕的。
最后你也可以关注偶,偶的头条号正在更新爬虫的基础系列,后续也会把上面讲到的都更新在偶的头条号里,最后需要提醒大家的是不要动不动就去培训学习,如果你不是特别笨,自学能力还可以,那就沉下心来好好学习,因为你到培训班最后也是靠你自己,老师也只是带你入门,或者给你几个项目实战而已,有什么问题你们也可以私信偶,很乐意为你们解答。
python分类器,python读取汉字,汉诺塔非递归算法python,交叉中值模型python,白底转蓝底python,python电灯,堆Python,python numpy multiply,qt 支持python,awsome python github,python去掉扩展名python分类器,python读取汉字,汉诺塔非递归算法python,交叉中值模型python,白底转蓝底python,python电灯,堆Python,python numpy multiply,qt 支持python,awsome python github,python去掉扩展名python分类器,python读取汉字,汉诺塔非递归算法python,交叉中值模型python,白底转蓝底python,python电灯,堆Python,python numpy multiply,qt 支持python,awsome python github,python去掉扩展名空间css下载,css含内容,选中多个css元素,css需要下载琴魔,css鼠标滑过图片闪光,css怎么让图片居中对齐,css 区分ie8 ie9 兼容