requests库!适合小白篇!

中文文档:https://requests.readthedocs.io/zh_CN/latest/
requests中文文档链接

基本使用:

import requests
'''
发送GET请求:
通过requests.get来调用
'''
#get可以发送GET请求,还可以添加headers和查询参数
headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
}
kw={'wd':'中国'}
#params 接收一个字典或者字符串的查询参数,字典类型自动转化为url编码,不需要urlencode()进行编码
response=requests.get("http://www.baidu.com/s",headers=headers,params=kw) #注意com后的s因为完整的查询网址是 https://www.baidu.com/s?wd=中国
print(response)

#查询响应的内容方法1
print(response.text)#返回的是字符串str类型,unicode格式的数据
#查询响应的内容方法2
print(response.content)#返回的是字节流的数据 bytes

#打印完整的url
print(response.url) #结果:http://www.baidu.com/s?wd=%E4%B8%AD%E5%9B%BD

#查看响应头部的字符编码:
print(response.encoding)

response.text与response.content的区别

response.content:这个是直接从网络上抓取的数据,没有经过任何编码,所以是一个bytes类型,其实在硬盘上和网络上传输的字符串都是bytes类型。

response.text:这个是str的数据类型,是requests库将response.content进行解码的字符串,解码需要指定一个编码方式,requests会根据自己的猜测来判断解码的方式,所以有时候会猜测错误,就会导致解码产生乱码,这时候就应该进行手动解码,比如使用print(response.content.decode(‘utf-8’))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值