首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

爬虫基本原理讲解(二)

上一章我们简单讲解了一下request以及response的定义,那么接下来,我们深入了解一下这两个词语,好为之后的爬虫课程做准备。

首先来了解一下request的一下基本架构。

首先,要了解网页的基本信息,url是一定要了解的,url全称是统一资源定位符,也就大家俗称的链接,如一个网页文档,一张图片,一个视频等都可以用url来表示。

然后还有请求头,包含请求的头部信息,如User-agent(浏览器信息)、Host(主机信息)、Cookies(保持登陆会话的数据信息)等信息。

那么其中User-agent的信息是非常重要的,如果没有这个信息,服务器会认定你的request非法,就无法完成进一步的解析动作,即无法获得信息。

最后我们再说一下请求体,一般来说我们在做get请求的时候是不会携带任何内容的,但是我们在做post请求的时候,请求体会以form data的形式呈现给大家,他会在我们在登录某网站的时候将表单提交的参数数据通过一定的配置传给服务器。那么接下来让我们来看一下实际网页的信息。

依然还是一样的方法,我们打开百度,搜索启蒙君,然后审查元素。

那我们进入审查元素界面后,点击network,按F5刷新网页后,会得到上图所示的界面,在这里我们点击第一个请求,在这里我们可以看到这里包含了我们请求的url、请求方式、状态码以及我们的地址。

接着下拉,在下面的位置我们可以看到requestheader,也就是请求头,很简单,我们看到了很多信息,就包含刚才说到的User-agent(浏览器信息)、Host(主机信息)、Cookies(保持登陆会话的数据信息)等。

相信细心的小伙伴也发现了在requestheader的上方其实是以及可以看到response header的相关信息了,那么刚才讲到的是request的基本框架,现在我们再来简单说明一下response的相关信息。

Response主要包含3个信息,第一就是响应状态,也就是之前图片里提到的状态码,那服务器主要的状态码包含:200(正常响应)、301(跳转)、404(找不到页面)、502(服务器错误)等。

第二个信息就是刚才细心的小伙伴们发现的responseheader(响应头)了,主要包括内容类型、内容长度、服务器信息、设置Cookie(set Cookie)等。相对也很简单,这里就不展开说明了。

接着继续使用print命令打印出响应头的内容,输入命令print(response.headers),我们可以看到这里我们得到的是一串字典结构的内容,多说一句,字典就是{}(大括号)包含的内容,也是python语言里一种非常常用的形式。顺便我们可以检查一下网页的运行情况,检查一下状态码,输入命令print(response.status_code),如果是200的话说明网页运行情况正常。

那么可能会有细心的小伙伴发现,我们在测试的时候为什么主要是看response的信息,request的信息类似请求头的信息该怎么获得呢?那么这里简单说一下,爬虫的主要功能当然是从网页中爬取数据,所有这里我们针对性的学习也主要是针对服务器响应回来的数据来做解析,不过既然说到这里了,我们也就request的信息多做一些了解吧。

今天内容也不少了,就让大家先消化消化,明天我们接着来讲解爬虫基本原理。

人工智能python启蒙

人工智能、数据挖掘,从python开始

人生苦短,我用python

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180312G1N08500?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券