• 网络爬虫


    网络爬虫是什么意思?

    网络爬虫也叫网络蜘蛛,是一种自动获取网页内容的程序,爬虫抓取的网页将会被搜索引擎系统储存,进行一定的分析、过滤,并建立索引,以便之后的用户能够查询到这个页面。这个获取信息的程序就是爬虫。

    又:

    网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫。

     

    爬虫为搜索引擎收集内容,搜索引擎展示的内容大部分是爬虫收集的。

     +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    详细的说:

    1、何为爬虫

    爬虫的概念就是能按照给定的目标及规则实现自动化采集网络数据的程序或脚本。通俗的来说,就是通过程序来模拟人登陆网站去获取想要数据,就是这么简单。
    爬虫的本质是直接用程序脚本去实现http请求,访问目标网站或数据接口,然后对获得的数据去进行解析,从而得到你想要的数据。
    本人认为爬虫的最高境界是完完全全模拟出人的操作,让网站监控那一方无法区分出是爬虫还是人。当然这是非常难的,现在几乎不可能,但技术在进步嘛。

    ....阅读原文 

     

    那么网络爬虫是怎么工作的呢?

    爬虫通过漫游的形式进行抓取,爬虫爬到一个页面后,看到一个链接,然后顺着那个链接又爬到另外一个页面,爬虫是不停的从一个页面跳到另外一个页面的,它一边下载这个网页,一边在提到这个网页中的链接,那个页面上所有的链接都放在一个公用的“待抓取列表”里。而且爬虫有个特点,就是他在访问你网站之前,不去做判断你这个网页本身怎么样的,不对网页内容判断就抓取,但是会有优先级的划分,尽可能不抓重复的内容,尽量抓重要内容(比如网站的公共部分)。搜索引擎同时会派出多个爬虫进行多线程的抓取,所有被爬虫抓取的网页将会被系统储存,进行一定的分析、过滤(去重),并建立索引,以便之后的查询和检索。

    根据搜索引擎进行分类,目前有百度爬虫 Baiduspider 百度蜘蛛 谷歌爬虫 Googlebot

     

     爬虫下载链接后进行提取如下:

    ===========================================

    爬虫相关的概念:
    URI  URI的全称是Universal Resource Identifier,统一资源标识符,它的维基解释http://zh.wikipedia.org/wiki/URI,其中http://zh.wikipedia.org/wiki/URI就是一个URI,首先她是一个字符串,其次她标识了一个网络资源,这里她是一个网页。
    URL  URL是URI的一个子集,全称是Universal Resource Locator,统一资源定位符,打个比方你要邮寄信件去某个地方,那得有地址,选择EMS还是顺风,邮寄的具体物品等这些信息都应该有,那这些组成了个类似的URL。比如http代表我们使用http协议,好比我们选择了顺风,zh.wikipedia.org这个就代表了发网哪个省,wiki具体到哪个市或者某个胡同,URI就代表邮寄的物品。

    爬虫说白了就是模拟浏览器去访问网站。我们打开chrome或者IE,输入URL,然后就会显示你想要的网站内容。如果要写爬虫,看到的这些远远不够。我们可能要了解当我们输入网址,按下回车键的时候,浏览器到底做了些什么事,为什么会有页面呈现给大家。
    1、首先浏览器发送了一个请求,也就是说我们要东西(GET/POST)
    2、服务器会给我们response
    3、服务器会发网页给我们
    4、浏览器会把网页解析给我们看


    上面可能是最简单的描述了。我们爬虫也许不会让浏览器把网页显示出来,但前面是必须的,我们也得模仿浏览器发请求,获取资源,这是我们要做的事。

     

    -----------------------------------------------------------------------------------------------------------------------------------------

    更多学习内容:

    http://blog.csdn.net/sun5769675/article/details/51362472

     http://www.csdn.net/article/2015-11-13/2826205

  • 相关阅读:
    ExtJs错误总结
    Java中的基本类型和引用类型(未完)
    【转】JavaScript中的全局变量与局部变量
    地理信息技术在现场项目的应用浅析
    vector的二分查找算法
    Linux命令
    封装 libmemcached
    Linux + boost + libmemcached + jsoncpp + mysql 配置
    SQL字符串处理函数大全(转)
    vector 排序方法sort的使用
  • 原文地址:https://www.cnblogs.com/xiangru0921/p/6651792.html
Copyright © 2020-2023  润新知