☞你不知道的☞获取网页资源-->处理网页内容-->返回Requests库中的Response对象.......

本文详细介绍了Pythonrequests库中Response对象的方法,包括其属性如status_code、headers、url、encoding和cookies,以及如何使用get()函数获取网页内容、处理状态码和设置编码以解决乱码问题。还涵盖了text()和content()方法的不同用途。
摘要由CSDN通过智能技术生成

目录

类Response中的方法:

1.Response的属性

2.设置编码

3.返回网页内容


关于获取网页,可以使用get()函数来实现,而当获取网页内容后,由于网页的多样性,还需要对网页返回的Response对象进行设置。

类Response中的方法:


1.Response的属性

包含的属性有:status_code、headers、url、encoding、cookies等

  • status_code(状态码):

        当获取一个HTML网页时,网页所在的服务器会返回一个状态码,表明本次获取网页的状态。

        常见的HTTP(超文本传送协议)状态码有:

        200(请求成功)、

        301(网页内容被永久转移到其他url)、

        404(请求的网页不存在:两种原因-->1.网址错误 2. 访问的服务器不存在或者是不工作的关机状态)、

        505(内部服务器错误)等

代码示例:

  • '''判断服务器返回的状态码是否为200'''
    import requests
    r=requests.get("https://www.ptpress.com.cn/")#该url网页示例为人民邮电出版社的网页地址
    print(r.status_code)#输出Response对象返回的状态码
    if r.status_code==200:
        '''判断状态码是否为200,如果为200则输出获取的网页内容,否则表明访问异常'''
        print(r.text)
    else:
        print("本次访问失败")
  • headers(响应头):

        服务器返回的附加信息,主要包括服务器传递的数据类型、使用的压缩方法、语言、服务器的信息、相应该请求的时间等。

  • url:

        响应的最终url位置。

  • encoding

        访问r.text时使用的编码。

  • cookies

        服务器返回的文件。(这是服务器为辨别用户身份,对用户操作进行会话跟踪而存储在用户本地终端上的数据。)

2.设置编码

当访问一个网页时,如果访问的内容时乱码,这是由于网页读取编码错误导致的,可以通过设置requests.get(url)返回的Response对象的encoding='utf-8'来修改”response对象.text"文本内容的编码方式。

Response对象中也提供了apparent_encoding()方法来自动识别网页的编码方式。此方法为机器识别,因此可能会出现识别错误的情况。(但是大多数情况可用)

设置自动识别网页的编码方式的使用形式:
Response对象.encoding=Response对象.apparent_encoding

示例代码:

'''设置编码'''
import requests
r=requests.get('此处填入'人民邮电出版社'.com')
r.encoding=r.apparent_encoding#设置自动识别网页的编码方式
print(r.text)

设置自动识别编码方式后,执行代码中的输出结果中将包含可识别的文字,而不再是乱码。如果依然出现内容乱码,读者需要自行设置encoding编码方式。

3.返回网页内容

有两种,分别是text()方法和content()方法。

  • text()方法:

        以字符串的形式返回网页内容。

  • content()方法:

        以二进制的形式网页内容。常用于直接保存网页中的媒体文件。

        示例代码:

'''返回网页内容'''
import requests
r=requests.get('https://cdn.ptpress.cn/uploadimg/Material/978-7-115-57804-4/72jpg/57804_s300.jpg')#使用get方法访问图片url
f2=open('a.jpg','wb')#使用open()函数创建了一个'a.jpg'文件,并且设置以二进制写入的模式。
f2.write(r.content)#将获取的url内容以二进制形式写入文件
f2.close()

代码执行结果将在代码所在的python文件的地址路径下面存储一张图片,并命名为a,属性为jpg。

如下:

介绍结束啦...

xue

  • 28
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值