04 Response对象的status_code属性可以获取响应状态码
文章目录
04 Response对象的status_code属性可以获取响应状态码4.1 Response.status_code 可以获取响应状态码4.2 课堂实操4.2.1 访问百度网页4.2.2 访问豆瓣电影首页4.2.3 访问知乎首页4.2.4 访问B站 4.3 总结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 = '/'# 用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 = ''# 用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 = '/'# 用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 = '/'# 用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