安
安迪Python
V1
2022/06/15阅读:38主题:默认主题
04 Response对象的status_code属性可以获取响应状态码
04 Response对象的status_code属性可以获取响应状态码
4.1 Response.status_code 可以获取响应状态码
爬虫的第一步是获取网页。
而获取网页中最关键的一步就是模拟浏览器向服务器发出请求。
在Python中可以用requests库的get函数模拟浏览器向服务器发起网络请求。
用requests.get()函数成功发起网络请求后,得到的是<Response [200],即得到一个Response对象。
注意是得到的是一个类的对象。
注意得到200表示网络请求成功。
当服务器收到网络请求时,会返回一个三位数字的代码响应浏览器的请求,表示服务器对于这个请求的响应状态,我们称之为响应状态码。
其中<Response [200]中的200代表服务器成功处理了请求,即访问网页成功。
200就是响应状态码。
<Response [200]是一个Response对象。
我们要得到具体的响应状态码200可以通过调用 Response 对象的status_code 属性去获得。
4.2 课堂实操
4.2.1 访问百度网页
# 导入访问网页要用的re库
import requests
# 申明一个变量存储网址
# 网址是一个字符串变量,注意网址前后都必须有引号
url = 'https://www.baidu.com/'
# 用requests.get(网址)发送请求,并把响应结果赋值给变量res
# 库名.函数名(要访问的网址)
res = requests.get(url)
print('******requests.get(url)函数得到的是一个Response对象******')
print(res,'\n') # '\n'表示输出后换行
print('******type()函数查看requests.get()函数返回结果的类型******')
print(type(res),'\n')
print('******打印Response对象的status_code属性,即状态码******')
# 对象.属性
print(res.status_code)
【终端输出】
******requests.get(url)函数得到的是一个Response对象******
<Response [200]>
******type()函数查看requests.get()函数返回结果的类型******
<class 'requests.models.Response'>
******打印Response对象的status_code属性,即状态码******
200
requests.get(url).status_code就成功获取到一个3位数的响应状态码。
4.2.2 访问豆瓣电影首页
# 导入访问网页要用的库
import requests
# 申明一个变量存储网址
# 网址是一个字符串变量,注意网址前后都必须有引号
url = 'https://movie.douban.com'
# 用requests.get(网址)访问网页
# 库名.函数名(要访问的网址)
print('******requests.get(url)函数得到的是一个Response对象******')
print(requests.get(url),'\n')
print('******打印Response对象的status_code属性,即状态码******')
print(requests.get(url).status_code)
【终端输出】
******requests.get(url)函数得到的是一个Response对象******
<Response [418]>
******打印Response对象的status_code属性,即状态码******
418
4.2.3 访问知乎首页
# 导入访问网页要用的库
import requests
# 申明一个变量存储网址
# 网址是一个字符串变量,注意网址前后都必须有引号
url = 'https://www.zhihu.com/'
# 用requests.get(网址)访问网页
# 库名.函数名(要访问的网址)
print('******requests.get(url)函数得到的是一个Response对象******')
print(requests.get(url),'\n')
print('******打印Response对象的status_code属性,即状态码******')
print(requests.get(url).status_code)
【终端输出】
******requests.get(url)函数得到的是一个Response对象******
<Response [403]>
******打印Response对象的status_code属性,即状态码******
403
4.2.4 访问B站
# 导入访问网页要用的库
import requests
# 申明一个变量存储网址
# 网址是一个字符串变量,注意网址前后都必须有引号
url = 'https://www.bilibili.com/'
# 用requests.get(网址)访问网页
# 库名.函数名(要访问的网址)
print('******requests.get(url)函数得到的是一个Response对象******')
print(requests.get(url),'\n')
print('******打印Response对象的status_code属性,即状态码******')
print(requests.get(url).status_code)
【终端输出】
******requests.get(url)函数得到的是一个Response对象******
<Response [403]>
******打印Response对象的status_code属性,即状态码******
403
4.3 总结

作者介绍
安
安迪Python
V1