python_爬虫入门

一、为什么学爬虫

要不是为了工作吃饭,要不就是为了装逼~这东西没有为什么要学只有你那他有什么用途,我用爬虫喜爬取一些图片,然后你懂得,我也是小白一个,刚学python2个月,我用我这2个月学的浓缩精华大家一起进步

二、为什么用python

因为我就会java 和python,然而java都忘了python才学所以用pythong

三、需要准备什么

首先你要有python三系列的环境,然后再安装requests库和BeautifulSoup库,这里不提供教程,请自行百度,因为想学编程语言,最起码给会用百度~

四、开始装逼教程

首先研究一下我们爬取什么,我们从最简单的例子开始,也是我接触的第一个爬虫开始,爬取大学排行榜http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html,这是我们要爬取的地址

首先我们要做的就是模仿网页请求,我的理解就是,我们用浏览器去访问地址,首先你先告诉浏览器url,也就是你要找的网页的地址,浏览器去你所提供的url地址的服务器去请求他,跟他说大哥我有个客户想看看你的信息,服务 器说好就把Html,通过互联网的方式发给你,你的浏览器解析变成了你所看的网页~

所以我们就按照这个思路开始编爬虫的第一步,找个东西发送url,然后接受服务返回的html~这块我们选着requests库

import requests#详情看解释一

r=requests.get('http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html')#看解释二

print(r.text)#解释三

解释:1.上面的代码我们为什么要调用requests 库,因为有人帮我们已经把框架写好了,起了名字叫requests所以不用白不用

2.这步相当于我们在浏览器地址栏输入地址~

3.print 在控制台输出,输出的r.text是什么,就是我刚才说的服务器返还回来的html

恭喜你了你已经写出来一个爬虫了~什么爬爬虫这么简单,爬虫难在对网页的分析,和对条件的限制,那我们需要做什么,第一步就是认识requests,这个东西都可做什么,上面的爬虫告诉我们他可以进行输入url,可以接受html,实际上他能做的有好多,现在我们开始介绍一下requests库
————————————————————————————————
request库中的具体方法:

requests.request()     构造一个请求
requests.get()           获取HTML网页的主要方法,对应与HTTP 的Get
requests.head()          获取HTML网页头信息的方法,对应Http的head
requests.post()          向Html网页提交Post 的请求方法,对应HTTP的post
requests.put()           向Html的网页提交put请求,对应Http的put
requests.patch()         向Html网页提交局部修改,对应Http的PATCH
requests.delete()        向HTML网页提交删除的请求,对应HTTP 的delete

是不是有点懵,下面我们就用案例说话

# 引用request库
import requests
#使用get 方法请求http://www.baidu.com
r=requests.get('http://www.baidu.com')
# 状态码(404,一定见过吧那就是状态码)
status_num=r.status_code
#进行页面转码(计算机说的是计算机语言,转码是为了变成人类语言)
r.encoding='utf-8'
#打印页面
print(r.text)
#打印响应头
print(r.headers)

这个代码比上面的我们多加了一个状态码,状态码可以做什么呢~你想想你的程序去访问一个404的网页,原来浏览器有图片我们知道404,现在没有了浏览器,用程序就可以用status_code的方法知道我们访问的页面是不是个正常页面

r.status_code   Http请求返回状态,200返回成功
r.text          Http请求响应内容的字符串形式,即url对应的页面内容
r.encoding      从Http header 中猜测的响应内容编码方式
r.apparent_encoding        从内容中分析出响应的内容编码格式
r.content          从HTTP 响应的内容二进制形式   #目录
r.headers          获取请求头信息

上面这些方法你只需要知道有,具体怎么用我们用案例会介绍的

你可能感兴趣的:(python_爬虫入门)