3.爬虫基础——网络请求

网络请求

1.网络请求的分类:

网络请求主要有八种,如下表所示:

HTTP请求
   请求方式                                            描述
GET发送请求来获得服务器上的资源【比如请求百度的页面】
POST向服务器提交资源让服务器处理【比如百度云盘上传资源】
HEAD

主要用来检查资源或超链接的有效性或是否可以可达、检查网页是否被串改或更新

PUT向指定资源位置上上传其最新内容
DELETE请求服务器删除某资源
CONNECTHTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
OPTIONS允许客户端查看服务器的性能
TRACE回显服务器收到的请求,主要用于测试或诊断

最常用的是GET和POST请求。

(1)GET请求:一般情况下,发送请求从服务器上获取资源,不会对服务器资源产生任何影响的时候使用GET请求。

(2)POST请求:向服务器发送数据(登录)、上传文件等让服务器处理,会对服务器资源产生影响的时候使用POST请求。

这两个请求是在网站开发中最常使用的两种请求。

(3)GET请求示例:

网址:https://www.baidu.com/

(4)POST请求示例:

网址:https://www.wenjuan.com/

2.请求头常见参数

(1)User-Agent

指浏览器的名称。我们在向别人的服务器发送请求的时候,别人的服务器通过这个参数知道请求是从哪种浏览器发出的,这样就能返回正确的信息。但是如果不设置这个参数的话,我们如果使用Python发送去了请求,别人的服务器【大部分服务器】就知道这个请求时Python发出的,从而不给我们返回正确的数据。因此我们必须设定这个参数。

(2)Referer

表明这个网页是从哪个网站跳转过来的。有些网页只能从特定的链接跳转过来,如果不设置这个参数,有些网页就知道你是通过非浏览器方式试图获取他们的html页面,因此就不返回给你正确的数据。所以这个参数可以用来进行反爬虫设计,我们需要设定这个参数。

(3)Cookie

HTTP协议是无状态的。也就是同一个人在浏览器上发送了两次请求,服务器不知道这两个请求是否来自同一个人。因此这时候就用Cookie来做标识。一般登陆后才能访问的网页,这个时候就需要发送Cookie信息。

【网址示例】

百度页面:https://www.baidu.com/

CSDN博客页面:https://www.csdn.net/

3.常见响应状态码

状态码含义
200请求成功
301

       永久重定向,资源(网页等)被永久转移到其它URL

             【www.jingdong.com --->>>www.jd.com】

404 请求的资源(网页等)不存在
500 内部服务器错误

扫描二维码即可参与该课程,解锁更多爬虫知识:

 

  • 6
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值