美文网首页
爬虫基础

爬虫基础

作者: lskylines | 来源:发表于2018-06-07 18:55 被阅读0次

    在编写一个爬虫之前,来学习下爬虫的基础知识:

    爬虫:简单的可以理解为模拟浏览器向服务器发送HTTP请求,服务器接收到请求,经过一系列的处理后返回响应内容,从返回的响应内容中提取所需数据的程序。

    首先是URI和URL:

    URI全称是Uniform Resource Identifier,即统一资源标识符,URL全称是Universal Resouce Locator,即统一资源定位符。
    URL.URI.URN的关系图

    在目前的互联网中,URN几乎用的很少,基本都是URL。

    超文本:也就是平时网页中的源代码(HTML),随便打开一个网页,鼠标点击右键,查看源代码即可以看到源代码。

    HTTP:一般我们打开浏览器访问资源时都是需要输入协议类型的,HTTP全称是超文本传输协议。
    HTTPS:可以理解为HTTP的安全版,在HTTP下加入了SSL层,简称HTTPS。

    HTTP请求过程:我们平时在浏览器中输入一个URL,回车之后可以在浏览器中观察到页面的内容,这个过程是向服务器发送了一个请求,服务器接收到这个请求之后,进行处理和解析,然后返回对应的响应,之后传给浏览器,响应中包含了源代码等等,之后浏览器进行解析,渲染之后才是我们平时所看到的网页。

    这里打开浏览器访问百度,然后按下F12,观察下发送请求的过程。

    baidu.com

    可以看到有Name,Status,Type,Waterfall等等

    • Name:请求的名称
    • Status:响应的状态吗,显示为200,代表响应是正常的。常见的还有403(服务器拒绝访问),404(未找到)
    • Type:文档类型,这里的是HTML文档
    • Waterfall 可视化瀑布流
    请求可分为4个内容:

    1 请求方法,常见的请求方法有GET请求和POST请求,POST请求可以理解为登陆知乎时输入账号密码的过程。
    2 请求的地址(url)
    3 请求头,headers等等:请求头里面包含有很多信息,这些都是服务器要用到的,重要的信息有Cookie,Reference, User-Agent等等

    Cookie:这是网站用来辨别用户的而进行会话跟踪而存储在用户本地的数据,一般我们登陆微博都是通过账号密码,有时候登陆一次之后就可以很长时间不用登陆,这是因为Cookie还存在本地,Cookie可以查出当前状态是登陆状态。
    Reference:可以用来标识请求是哪个页面发送过来的,常做防盗链处理等
    User-Agent:可以让服务器识别客户端使用的操作系统及其浏览器版本,一般写爬虫时加上可以伪装为浏览器。不加容易被识别出时爬虫。

    4 请求体

    常见的请求方法分为两种:Get和Post,当然还有其他不常用的PUT,DELETE等等。

    网页的组成一般可以分为三部分,HTML,CSS,JS,如果把网页比作一个人来看,那么HTML相当于骨架,CSS相当于皮肤,JS相当于肌肉

    接下来来分析下爬虫能抓的数据时哪样的:
    我们常见的一些二进制数据图片视频音频,都是可以通过爬虫来进行抓取的。

    了解完这些基础后,下一节就开始学习下如何使用基本库来进行抓取一些页面。

    相关文章

      网友评论

          本文标题:爬虫基础

          本文链接:https://www.haomeiwen.com/subject/sxqnsftx.html