黑马程序员技术交流社区

标题: Python爬虫基础学习经验分享 [打印本页]

作者: zy930316    时间: 2018-6-1 21:47
标题: Python爬虫基础学习经验分享
本帖最后由 zy930316 于 2018-6-1 21:49 编辑

       一晃来到黑马的时间已经有将近5个月了,感觉收获颇丰!我底子不太好是老师和同学们对我的帮助才支撑我走到现在。Python是入门IT的良选,如果你是半路出家,自学了一些Python基础现在想要入手一些简单的开发的话,我推荐先学爬虫(虽然黑马的Python课程先学的是WEB的开发),原因有两点:1、爬虫入门简单易学;2、比较有趣可以保持你学习的动力。(学习动力自学尤为重要)刚好我现阶段课程是学习爬虫,就总结一下爬虫的基础希望对你能有些帮助!      1)首先要明白爬虫的原理:爬虫本质就是模拟客户端向服务器发送请求的程序。这一点可以说简单也可以说重要,因为这句话实际上就是爬虫的纲领,万变不离其宗将来无论写的爬虫是要获取什么应付什么样的反爬手段都是在其基础上有迹可循的,但是管知道这个并没有什么用!(可以想象成心法口诀)
      2)(前面纯属本人自己瞎扯,下面开始正常内容)爬虫的一般流程:一般我们把爬虫分为两类,一类是通用爬虫,一类是聚焦爬虫。
我们代码编写的一般都是聚焦爬虫,爬虫编写有一套固定的套路:1、准备需要爬取的页面的URL列表——2、发送请求获取响应数据——3、从响应数据中新的URL加入URL列表——4、提取需要的数据——5、保存数据
      3)了解Http协议,起码明白一些基础的知识:1、知道发送请求的HTTP格式;2、了解爬虫中常用的请求头User-Agent、Cookie、Referer代表的含义;3、了解请求方法之间的区别:起码了解get和post
      4)搞懂requests包或者urllib包(用来发送请求的工具包)其中一种的用法:起码知道怎么发送请求和请求如何携带参数和请求头,这里简单的过一下requests:
①requests.get(url,prams,headers)请求指定网页的数据,url是指定的网页,prams是携带的参数,headers是携带的请求头。该方法会返回网页的数据,一般用一个response(自定义的一个变量)接收返回的是一个对象。response可以调用response.text得到文本但是中文一般不这么用(用response.content.decode()),因为一些小问题总是识别错编码方式,response.content得到的是一个二进制数据,decode()是对它进行的解码。好吧,我承认我不想写下去了,天知道一点点说明白有多难,直接上代码吧!(附件里的代码





      5)再说说学要掌握的知识点吧:
1、http相关知识。
2、浏览器拦截、抓包。
3、python2 中编码知识,python3 中bytes 和str类型转换。
4、抓取javascript 动态生成的内容。
4、模拟post、get,header等
5、cookie处理,登录。
6、代理访问。
7、多线程访问、python 3 asyncio 异步。
8、正则表达式、xpath等。
9、分布式爬虫开发。

10、scrapy的使用。


snipaste20180601_214840.png (1.6 KB, 下载次数: 14)

snipaste20180601_214840.png

任意贴吧爬取.txt

2.69 KB, 下载次数: 100






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2