目录
前言
requests模块
1 什么是requests
2 安装requests
3 使用requests
3.1 访问百度首页并保存该网页数据到变量里
3.2 对保存的数据进行转码
3.3 保存数据到本地
3.4 对保存的数据进行编码
总结
前言
本文将延续昨天的教程继续讲解,教大家如何使用爬虫中最最最基础的一个库——requests库。
requests模块
1 什么是requests
requests是python的一款简单易用的HTTP库,相较于urllib来说更加的简洁。
下面,让我们来使用requests库吧!
import requests url = "https://www.baidu.com/" rs = requests.get(url=url).text print(rs)
通过这几行简简单单的代码,我们就实现了获取csdn首页的html代码,是不是很神奇呢?
2 安装requests
因为我们接下来都是在jupyter中实现代码的,所以我选择打开jupyter来进行接下来的操作:
首先,Anaconda prompt,输入pip install requests,安装完成后如下图所示:
3 使用requests
3.1 访问百度首页并保存该网页数据到变量里
接下来,让我们打开jupyter,输入如下指令:
import requests # 导入我们所需要的模块requests url = 'https://www.baidu.com/' # 定义我们所需要访问的url地址 rs = requests.get(url=url) # 使用requests模块向目标地址发出get请求 rs = rs.text # 将获取的数据转换成字符形式 print(rs)
3.2 对保存的数据进行转码
这里我们输出一下,发现它乱码了,原因是在转换过程中编码错误,需要正确的编码才能够显示,我们以ISO-8859-1对其进行编码,再用utf-8进行解码
import requests # 导入我们所需要的模块requests
url = 'https://www.baidu.com/' # 定义我们所需要访问的url地址
rs = requests.get(url=url) # 使用requests模块向目标地址发出get请求
rs = rs.text # 将获取的数据转换成字符形式
rs = rs.encode('iso-8859-1').decode('utf-8') # 转码
print(rs)
转码之后,数据便能正常显示了
3.3 保存数据到本地
我们获取到内容之后,要将其进行保存,这里我使用的是python自带的open()函数进行保存
with open('baidu.html', 'w') as f:
f.write(rs)
保存成功后,我们通过本地打开它,发现它又乱码了
3.4 对保存的数据进行编码
我们向open中添加一个参数encoding,将其赋值为utf-8
with open('baidu.html', 'w', encoding='utf-8') as f:
f.write(rs)
添加之后果然不会乱码了
总结
requests模块是个功能很强大的模块,它相比其它模块来说功能强大,代码简短易懂,我今天所讲述的只是其中的get方法,明天会带给大家更多的知识。
下面是笔者的联系方式,笔者是人工智能专业的,是个小菜鸡,这是我的第二篇博客,有什么错误的地方希望大家多多指出。



