爬虫基础入门——Requests轻松上手!

前言

目前自己在学习爬虫,故开始写博客来记录自己的学习心得并且顺便把自己的所学分享给各位想要学习爬虫的朋友。

Request是什么?

request是python中用于发送网络请求的库,底层基于urllib库,我们可以用它来模拟浏览器向网站服务器发送请求,从而拿到我们想要的数据内容,然后就可以对数据进行提取,得到我们想要的内容了。

爬虫流程
在这里插入图片描述
request做的就是第二、第三步

Requests的安装

我前期用的是Windows系统下的pycharm编写的代码,故可以直接用pip安装request:

pip3 install reqeusts -i https://pypi.tuna.tsinghua.edu.cn/simple

直接pip太慢,我这里用的清华的更新源,安装好之后,就可以愉快的开始敲代码了

Requests第一步——发送请求

requests中带了几乎所有的网络请求方式:

  • requests.get()
  • requests.put()
  • requests.delete()
  • requests.head()
  • requests.options()

其他的请求方式之后再说,我们先来看第一个,也是最常用的请求:

requests.get()

get()函数中有一个参数:
在这里插入图片描述
是必填参数,也就是要请求的网址,例如:
在这里插入图片描述

这样我们就成功向bing发送请求了

Requests第二步——获取数据

在上一步发送完请求之后,会返回给我们一个对象,我们用一个变量来接收它:
在这里插入图片描述
但是直接打印之后并不是我们想要的页面数据,这里就需要看一下返回的这个对象的一些属性了:

在这里插入图片描述

在这里我们要用到的是content属性和text属性,分别打印两者:

text:
在这里插入图片描述

content:
在这里插入图片描述

两者的区别在于类型不一样:
在这里插入图片描述
在这里可以用decode对字节类型的数据进行编码:
就没有r了
这样我们就获取到数据了,但是仅仅是这样绝对不行的,我们接着来看get的其他参数

get()方法中的headers参数

headers主要是模拟让服务器觉得你是一个正常的访问者,而不是直接用代码请求的,所以在这里我们要尽可能的模仿浏览器是如何请求的,以bing为例:
在这里插入图片描述
在这里最基础的,就是下面的user-agent,在请求的时候最基本要把这个带上去,否则会被很容易识别为爬虫,user-agent中包含了我们用什么系统,用的什么浏览器访问等参数。

所以我们要模仿它:
headers参数接收字典类型的数据,所以我们要定义字典,然后把它传参给headers:
在这里插入图片描述
当然我们在真正开始做的时候最好是把浏览器请求头中所带的所有参数都带上,这里只是讲一下headers参数是干嘛的,应该怎么用。

get()方法中params参数

在get请求中是可以传参数的:
没有参数的url
没有参数的url ↑

在这里插入图片描述
带参数的url ↑

带参数的url是我用bing搜索python生成的url,如果我们想要的是bing中搜索完python的页面,也就是下面的页面:
在这里插入图片描述

那么我们就需要带上参数了:

在这里插入图片描述

然后把请求参数写成字典格式:
在这里插入图片描述
最后写入再打开p.html就是刚才请求的页面了:
在这里插入图片描述

结尾

到这里requests最基本的入门已经写完了,想着把自己之前所学习的内容总结一遍,加强自己的记忆以及对代码的理解。

如果上述内容有任何地方写的不对或者有误导性的地方欢迎大家指出!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值