requests模块中返回的content和text的区别

test

类型:str

解码类型:根据HTTP头部响应的编码做出有根据的推测,推测的文本编码。

改变编码的方式:response.encoding=”gbk”

用途:response.text返回的是Unicode型数据;一般用来获取文本response.text;

content

类型:bytes

解码类型:没有指定

修改编码的方式:response.content.decode(“utf8”)

用途:response.content返回的是bytes类型,也就是二进制数据;用来获取图片,文件response.content

原文地址:https://www.cnblogs.com/lslin/p/12391129.html

时间: 2024-10-09 12:46:29

requests模块中返回的content和text的区别的相关文章

在requests模块中使用代理发送请求

1. 代理概述 玩爬虫为什么我们不能使用一个固定IP发送请求 你使用一个固定IP发送每秒向对方服务器发送10几个请求,对方认为这样操作不是人干的, 就把你IP给封了 服务器端的人可以根据你IP很快锁定你, 要求你对这种窃取行为赔偿. 代理 正向代理与反向代理 正向代理与反向代理的区别 反向代理: 服务器端知道代理的存在,反向代理是为了保护服务器或负责负载均衡 但是客户端不知道代理的存在的 正向代理: 客户端知道代理的存在,正向代理是为保护客户端,防止追究责任. 但是服务端不知道真实的客户端 2.

Requests模块中持续性的 Cookie 会话

Requests模块有如下优点: 国际化域名和 URLs Keep-Alive & 连接池 持续性的 Cookie 会话 类浏览器式的 SSL 加密认证 基本/精简式的身份认证 优雅的键/值 Cookies 自动解压 Unicode 编码的响应主体 多段文件上传 连接超时 支持 .netrc 适用于 Python 2.6-3.3 安全的线程使用 其中最吸引我的就是"持续性的 Cookie 会话"功能,它接管了Cookie管理方面的工作,使我们在实现模拟登录时的工作量大大减少.下

python request中的content和text的区别

一直不清楚requestes的content和text方法的区别,只知道content返回的是二进制数据,而text返回的是文本数据 先看看content的源码: 注释可知content返回的是bytes型也就是二进制的数据 在看看text的源码: 意思是requests.text是根据网页的响应来猜测编码,如果服务器不指定的话,默认编码是"ISO-8859-1"所以这是为什么有些时候用 response.text 返回的是乱码的原因. 可以用response.encoding看一下他

python之requests模块中的params和data的区别

params的时候之间接把参数加到url后面,只在get请求时使用: 1 import requests 2 url='https://api.ireaderm.net/account/charge/info/android' 3 data={'recharge':36,'fee_id':'ireader_nonrenew_vip'} 4 header={ 5 'X-ZY-Timestamp':'1502097587609', 6 'X-ZY-Sign':'xxxxxxxxxxxxxxxxxxx

requests模块中request函数参数介绍

request.request: 参数: - method:  提交方式:'POST'.'GET'.'PUSH'等等 - url:     提交地址 - params: 在URL中传递的参数,主要用于GET方式提交 ,例如: requests.request( method='GET', url= 'http://www.baidu.com', params = {'k1':'v1','k2':'v2'} ) 提交后如下方式提交到后台: http://www.baidu.com?k1=v1&k2

Mysql 中 char 、varchar 、text的区别

首先它们的存储方式和数据的检索方式都不一样.数据的检索效率是:char > varchar > text 空间占用方面,就要具体情况具体分析了. char:存储定长数据很方便,CHAR字段上的索引效率级高,必须在括号里定义长度,可以有默认值,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间(自动用空格填充),且在检索的时候后面的空格会隐藏掉,所以检索出来的数据需要记得用什么trim之类的函数去过滤空格. varchar:存储变长数据,但存储效率没有C

MySQL中char、varchar和text的区别

它们的存储方式和数据的检索方式都不一样.数据的检索效率是:char > varchar > text空间占用方面,就要具体情况具体分析了. char:存储定长数据很方便,CHAR字段上的索引效率级高,必须在括号里定义长度,可以有默认值,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间(自动用空格填充),且在检索的时候后面的空格会隐藏掉,所以检索出来的数据需要记得用什么trim之类的函数去过滤空格. varchar:存储变长数据,但存储效率没有CHAR

mybatis <sql /> 配置中 返回值 resultType 与resultMap的区别

mybatis的objectMapper.xml中, 1) 若<sql /> 查询语句中配置的是resultType=“实体类/DTO” ,则从mybatis返回的键值对结果集(Map)会直接赋值给该DTO(根据set()/get()方法,因此该DTO属性名要与表字段名一致,若不一致,可再sql查询语句中用as 更换查出来表字段名)中相映射的属性值,而与该mappper.xml文件配置<mapper/>里的<resultMap />无关. 2)若<sql />

爬虫简介和requests模块

目录 爬虫介绍 requests模块 requests模块 1.requests模块的基本使用 2.get 请求携带参数,调用params参数,其本质上还是调用urlencode 3.携带headers,请求头是将自身伪装成浏览器的关键 4.带cookie 5.发送post请求(注册,登陆),携带数据(body) 6.session对象 7.响应对象 8.乱码问题 9.解析json 10.使用代理 11.异常处理 12.上传文件(爬虫用的比较少,一般用于后台写服务,将爬取下来的文件上传给其他服务