架构人生

放蜘蛛出来爬1000张免费HOT图片,抛砖引玉引【垂直搜索】领域高手围观

【本文摘要】

由于本人对垂直搜索有着浓厚兴趣,抱着与园子里高手一起更深入研究,故抛砖引玉,献上蜘蛛们爬回来的1000张比较Hot的美女图片给大家(声明:大家通过本蜘蛛软件爬出来的图片,看看就罢了不要传播)。搜图片只是垂直搜索的一个具体应用,不用我详说,大家也知道前景远远不是这些。本文所提供的爬虫是受限版(仅能爬1000张热图),目的不在于本爬虫和图片,而是引无数高手一起探讨垂直搜索这个领域。

【预备概念】

垂直搜索是针对某一个行业的专业搜索引擎,是搜索引擎的细分和延伸,是对网页库中的某类专门的信息进行一次整合,定向分字段抽取出需要的数据进行处理后再以某种形式返回给用户。相对通用搜索引擎的信息量大、查询不准确、深度不够等提出来的新的搜索引擎服务模式,通过针对某一特定领域、某一特定人群或某一特定需求提供的有一定价值的信息和相关服务。其特点就是“专、精、深”,且具有行业色彩,相比较通用搜索引擎的海量信息无序化,垂直搜索引擎则显得更加专注、具体和深入。

 【先看结果】

大家可以在机器上装上至少.NET3.5以上的环境(具体安装不用介绍,园友们应该都知道),然后下载以下程序直接运行(仅一个EXE文件):

 

如果您的浏览器不支持上面的图标下载的话,可通过地址https://skydrive.live.com/?cid=35d7be189926747a&id=35D7BE189926747A%211223直接下载。

第一次执行可能会有些慢,这要看你机器的网络速度如何。当看到EXE文件下有文件夹出现,且文件夹里有图片,则表示运行正常。一个针对HOT图片的垂直搜索的结果就呈现了。

 【再谈原理】

由于笔者知识浅薄,仅简要谈一下原理,搜索是通过一个已知URL地址,然后遍历到所有的URL地址,也就是让蜘蛛机器人自己去寻找URL地址(当然不能让蜘蛛出现死循环,会记录已经爬过的路径,避免重复),这样下去,再加上多线程并发,URL地址会越爬越多,可以说在浩瀚互联网里,应该没有终点了。

以上,主要是找到了各家服务器地址,但是如何搜索具体领域的数据呢?如本文提到的图片(美女图)。这里就要用到图像识别,图像本身是一个二进制文件,蜘蛛机器人不会和我们肉眼那样去瞅图片里的内容是否是美女,还是丑女,它仅仅知道图片的一些二进制信息,通过一些算法来确认图片内容和格式。

如果上面的第一段的派蜘蛛机器人出去的华是通用搜索的话,那么第二段蜘蛛机器人搜索URL并识别合格的图片数据则为垂直搜索了。接下来,再合理的展现给用户,便是一套完整的流程。本程序会分析搜索到的图片像素大小,小图片会被过滤不保存,同名的,也会分析内容是否一样,不一样的话则重新命名,总之不用担心大量的小图片会被下载和文件重名等问题。如果可以的话再写一些终端展现UI给用户,就更完美了。

 

【最后讨论】 

说了那么多,由于时间原因,有些文字可能讲得不那么清楚,但一点很明确,【蜘蛛爬虫】->【数据】->【终端呈现】,最近刚拿同学的WP7市场一个Student帐号,实验性地将以“蜘蛛爬虫”的Demo程序上传到了微软Marketplace,很开心的是没有任何BUG,测试上都通过。接下来,想写更多的垂直搜索方面的产品,如一些具体领域的数据抓取,如珠宝市场价格、手机领域销量、 微博热门话题等等。最后,大家有么有什么更高深的见解在垂直搜索上面呢?我已经抛砖了,大家就不要再抛了,欢迎提出自己的看法和建议。

 

 【与此相关】

蜘蛛爬虫网络高像素图片抓取工具[ZSpider.NET]

 

posted on 2012-02-02 22:42 周利华 阅读(...) 评论(...) 编辑 收藏

导航

公告