Requests库
第一次学习Python,进行静态网页爬取
安装Python环境,在控制台窗口运行python语句,显示
我的版本是3.7.0a2 版本
在网页信息获取中最重要的一个库就是request,在观看学习教程的时候,讲解是需要在点击打开链接上面重新安装,我再检测自己的Python库的时候发现,库里已经存在request。
所以继续静态网页爬取,从最简单的开始
import requests
r = requests.get("http://www.baidu.com")
r.status_code
print(r.status_code)
r.encoding = 'utf-8'
print(r.text)
这是在Pycharm中运行的 .py程序
r.status_code用来表示网页状态码(摘自百度百科:HTTP状态码(HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。)
也可以在控制台窗口中运行,utf-8解决了爬取网页的乱码问题。
import requests
r = requests.get("http://www.baidu.com")
r.status_code
r.encoding = 'utf-8'
r.text
Request的get方法
获得一个网页最简单直接的方法就是 r = requests.get(url) ,向服务器请求资源。
完整的requests(url, params=None, **kwargs):
url -> 拟获取页面的url链接
params -> url中的额外参数,字典或字节流格式
**kwargs -> 12个控制访问的参数
response的对象属性
requests库中有两个重要的对象属性,Request以及Response。
在这里可以用type(r)来检测r的类型,结果得出他是一个response类型的。
我自己对于这一部分的理解就是,你用来对网页进行请求, r 是网页对你进行对回应。
r.headers
#http响应内容的头部内容,来返回get请求获得网页的头部信息。
r.status_code
#http请求的返回状态,200表示连接成功,404表示连接失败
r.text
#http响应内容的字符串形式,url对应的页面内容
r.encoding
#从HTTP header中猜测的响应内容编码方式
r.apparent_encoding
#从内容分析出的响应内容的编码方式(备选编码方式)
r.content
#HTTP响应内容的二进制形式