-
首先我们书写代码的时候,我们首先需要的就是先确定我们的发送网络请求的网址
urlurl这个就是我们的统一资源定位符uniform resourse location- 然后使用模块对我们的网址发送请求即可,然后就会然后一个响应的内容返回
- 需要我们注意的是: 我们发送的请求可以是:
get请求post请求put请求
- 需要我们注意的是: 我们发送的请求可以是:
-
实现了获取响应内容后,可以对响应内容做出的处理:
.text获取简单的html网页.status_code获取响应状态码
-
发送携带参数的
get请求- 一般的话,我们就是直接使用的我们的创建一个空字典设置携带的参数
- 然后使用
params参数实现接收数据即可
-
发送携带参数的
post请求- 还是使用的是我们的创建一个空字典,将需要传输的数据使用
data实现接收需要传入的数据即可 - 如果说吧是我们的携带参数的请求,那么还是通过
params接收即可
- 还是使用的是我们的创建一个空字典,将需要传输的数据使用
-
获取 json 数据
- 直接将我们的返回数据通过
.json()实现转换 - 就可以实现我们的获取得到
json数据
- 直接将我们的返回数据通过
-
获取二进制数据
.content就可以实现获取二进制数据
-
实现初步伪装爬虫
- 这个的实现的最基本的步骤就是实现添加我们的
headers来实现伪装自己 - 为什么需要伪装:
- 因为在实现向一个网页发送请求的时候,单纯的请求可能会导致被认为是恶意攻击
- 这个时候,我们就可以通过配置
headers信息来实现伪装自己,不被认为是恶意攻击 - 这个配置信息的由来是通过的
cv大法就可以实现获取了 - 当你被认为是一个爬虫用户的时候,就有可能导致
封ip - 一般的话,只用复制:
user-agent即可
- 然后请求的时候,把
headers带上就行了
- 这个的实现的最基本的步骤就是实现添加我们的
- 会话维持
- 首先我们的额
http/https本身就是一个无状态的协议,对事物是不具备记忆功能的,每一次的运行都是一次独立的状态 - 为了解决这个问题,就出现了
cookie和session来实现解决这个无状态协议问题 - 这个理解就是:
- 如果你和我一样的,喜欢用的是
pc端的b站,当没有这个会话维持的时候 - 那么最后导致的就是,你每次进去后都需要进行一次登录
- 或者说每次刷新网页的时候,也是需要进行一次登录提醒
- 如果你和我一样的,喜欢用的是
cookie一般来说,这个就是登录用户的一种用户标识,然后通过浏览器缓存实现会话维持 (是有过期时间的)- 这个还是添加到
headers配置信息里面的
- 这个还是添加到
session- 就是实现使用我们的session 来实现发送我们的请求
- 这个时候,
服务端就可以知道一个用户发送的请求
- 这个时候,
- 就是实现使用我们的session 来实现发送我们的请求
- 首先我们的额
import requets
# 步骤一
sess = requests.session()
sess.get(url, 配置信息)-
配置代理信息
- 有的时候,我们实现请求的时候,肯定是不使用自己本机去发送请求的
- 这个时候就需要配置代理信息
- 代理信息:
httphttps同时实现设置 - 配置信息的字段就是:
proxies,这个的配置信息里面携带了我们的ip地址信息
-
请求超时设置
- 就是在请求的时候设置字段:
timeout后面实现设置的时间就是我们的秒(只是单位)
- 就是在请求的时候设置字段: