the website is API
Requests:自动爬取HTML页面,自动网络提交请求

1. Requests库的安装

打开控制台,输入:

pip install requests

更多安装库的方法可见
请求库的安装:https://blog.csdn.net/yu1069153913/article/details/102159354

2. Requests库的主要方法

Requests主要有7个方法

方法说明
requests.request()构造一个请求,支撑一下各方法的基础方法
requests.get()获取HTML网页的主要方法,对应于HTTP的GET
requests.head()获取HTML网页头信息的方法,对应于HTTP的HEAD
requests.post项HTML网页提交POST请求的方法,对应于HTTP的POST
requests.put()项HTML网页提交PUT请求的方法,对应于HTTP的PUT
requests.patch()向HTML网页提交局部修改请求,对应于HTTP的PATCH
requests.delete()向HTML页面提交删除请求,对应于HTTP的DELETE

3. Requests库的get方法

基本使用:

r = requests.get(url)

使用requests库,会改造一个向服务器请求资源的Request对象
返回一个包含服务器资源的Response对象

Response对象包含了爬虫返回的内容

完整使用:

requests.get(url, params=None, **kwargs)
  • url:拟获取页面的url链接
  • params:url中的额外参数,字典或字节流格式,可选
  • kwargs:12个控制访问的参数,可选

注:get方法其实是由request方法封装而成的
在这里插入图片描述

3. Response对象和编码

Response的属性:

属性说明
r.status_codeHTTP请求的返回状态,200表示连接成功,404表示失败(一般除了200,其他的都是失败的)
r.textHTTP响应内容的字符串形式,即,url对应的页面内容
r.encoding从HTTP header中猜测的响应内容编码方式
r.apparent_encoding从内容中分析出的响应内容编码方式(备选编码方式)
r.contentHTTP响应内容的二进制形式

注:

  • r.encoding:如果header中不存在charset,则认为编码为ISO-8859-1,这种编码不能解析中文,因此有时候会导致乱码(是根据header头信息中得到编码)
  • r.apparent_encoding:根据页面内容分析出的编码方式

如果因为上述原因产生乱码,可以加上下面这行代码即可:

r.encoding = r.apparent_encoding
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐