前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于pb decompiler的搜索

Spider技术:设计Spider时要解决的几个问题(渡渡鸟工作室) - chengg0769 来自四川,在东莞虚度十载 - 博客频道 - CSDN.NET chengg0769 来自四川,在东莞虚度十载 PB反编译_Powerbuilder DeCompiler_PB反编译器_PB混淆器_PB加密 目录视图 摘要视图 订阅 【大声说出你的爱】CSDN社区情人节特别活动 专访李云:从通讯行业的架构师到互联网“新兵” 电子版《程序员》杂志免费领 Spider技术:设计Spider时要解决的几个问题(渡渡鸟工作室) 2007-08-13 22:10 1371人阅读 评论(0) 收藏 举报 工作搜索引擎互联网服务器url文档 作者:渡渡鸟工作室http://hi.baidu.com/dudubirdstudio(版权所有,转载须注明出处) spider是整个搜索引擎系统中很重要的一个组成部分,可以说是搜索引擎的基础。它不仅仅是为搜索引擎提供了搜索对象——海量数据,更重要的是它使搜索引擎从一个检索工具上升为一个信息整合的平台。搜索引擎的本质就是信息的整合,通过信息的整合构建了一个用户平台。这样就使得搜索引擎成为一个很好的且很有利润的商业化对象。 好的搜索引擎必须配一个好的spider,好的spider需要设计人员优雅的去设计。 设计时spider重点要解决以下几个问题:1. 抓取的效率 抓取的效率和计算机硬件的性能、硬件的多少、网络的带宽有关系,但为了提高抓取效率不能一味地增加硬件,而是要利用有限的硬件资源在一定的时间内抓取最多的的网页。 常见的提高抓取效率的策略有: (1)采用多线程并发抓取 (2)采用单线程、非阻塞I/O抓取 (3)分布式抓取,把抓取工作分布到多台服务器完成,对于Google这样的搜索引擎还包括地理上的分布式,把抓取服务器机群分布到全球各个国家的主干网上抓取。 (4) 抓取的效率很大程度也取决于抓取的对象——网站服务器和带宽的速度。因此设计spider时要有估算抓取网站服务器负载和带宽的功能并且有一个很好调度策略,使得访问不同状况网站服务器有不同的频率。 2. 抓取的质量 设计spider的目标不是把互联网上的所有网页都抓回来,而是抓重要的而且是最新的网页的即可。 怎样抓取高质量的网页?哪些网页是质量比较高的?这里就要求设计人员对互联网以及用户的习惯和常理都有一定的理解。 从互联网整体上看,网站中各个网页之间的链接关系是一个很重要的资源,因此在抓取网页时要记录网页之间的链接关系,以便进行链接分析,从而通过链接关系来评价网页的质量。 网页重要性的评价指标可以从以下几个方面着手: (1)某个网页的链接深度。 (2)网页的入度。 (3)网页的父网页的入度。 (4)网页的重复数。 以上这些指标都基于这么几个常理: (1)网站最重要的网页都放在前面,即层次越浅。网站首页以及首页指向的网页都是比较重要的。 (2)有很多网页、很重要的网页都指向这个网页,这个网页就比较重要,就像检索工具《SCI》评价论文的质量一样,被引用的论文的次数越多,则说明这篇论文比较重要。 (3)第二点讲的是引用,还有一个就是转载,网页转载的次数越多,则说明这个网页比较重要,就像报纸或杂志文章一样,好的文章都被其他媒体大量转载。 具体实现时除了第一个指标外,其他三个指标只有在预处理阶段的统计才能得出。 所以在抓取时应首先获得尽量多的网站首页,然后从该网站首页出发采用先宽的抓取策略。3. 抓取的礼貌问题 礼貌的抓取具体表现在:网站不让抓取的网页就不要抓取,控制好访问网站的频率,spider的抓取行为不能影响正常用户的访问。因此spider在抓取时要: (1)限制单位时间内对一个网站抓取网页的数量。 (2)限制同时对同一个网站抓取的线程/进程的数量。 (3)控制对同一个网站抓取的时间间隔。 (4)遵循robots、META Tag 、sitemap.htm协议 ,对不允许访问的目录不访问。 (5)在抓取网页的时发送的请求中,通过User-agent、Form字段,标识spider的身份、联系Email、spdier注意事项页面URL。4. 避免重复抓取 之所以会造成重复抓取,是因为: (1)互联网上大量网页被其他网页引用,这就使得同一个网页的URL出现在多个不同的网页中,这就要求spider必须有URL消重功能。 (2)网页被其他网页转载,这就使得同一篇文章出现在不同URL的页面中,这就要求spider具有内容消重功能,目前这块比较难以实现,当前很多搜索引擎公司都没有较好的解决这个问题。 (3)网页的URL有多种表示形式,这是由于DNS与IP对应关系造成的。 一个URL对应一个网页,但由于URL可以采用以下两种表示方式: [协议://]域名[:端口][/路径/文件名] [协议://]点分十进制IP地址[:端口][/路径/文件名] 且域名与IP存在以下对应关系: -- 一对一,http://www.baidu.com 与http://220.231.39.97指向的是同一网页。 -- 一对多,DNS轮转,http://www.163.com 与http://202.108.42.73,http://202.108.42.91指向的是同一网页。 -- 多对一,虚拟主机,多个域名对应同一个ip,不同的URL指向不同的网页。 一个网站具有多个域名,对应同一个IP,例如:www.netease.com,www.163.com指向同一个网页。 - - 多个域名对应多个ip ,一个网站有多个域名,同时采用了DNS轮转技术,一个域名对应多个ip地址。 5. 抓取数据的更新 抓取数据的更新问题是一个很重要的问题,它决定了用户能不能马上搜索到最新的新闻,最新的内容,但是由于互联网上海量的网页使得一次抓取的周期都很长 ,如果通过每次重新抓取一次来更新,势必更新周期很长。 spider已经抓取的网页可能被修改、删除,spider要定期检测这些网页的更新情况,同时更新原始网页库、提取的数据库以及索引库。 互联网上同时不断的产生新的网页,spider也要抓取回来。 不同的网站的更新周期不一样,有的很长,有点很短。 spider要根据网站的更新周期,对网站进行分类,不同更新周期的网站抓取的周期不一样。 一般来说,网络蜘蛛在更新原始网页库等的时候,不用把URL对应的网页重新抓取一遍,对于大部分的网页,只需要HTTP Head请求、条件Get请求来更新。 6.内容提取 spider要抓取的文件各种各样,比如有HTML、XML网页,有doc、ppt、xls、pdf等带格式的文档,有图片、音频、视频等多媒体数据,对这些不同类型文件spider都要提取出文件里的纯文本内容。 对于doc、pdf等文档,这种由专业厂商提供的软件生成的文档,厂商都会提供相应的文本提取接口。 对于HTML、XML网页来说,除了标题和正文以外,会有许多版权信息、广告链接以及公共的频道链接,这些链接和文本正文一点关系也没有,在提取网页内容的时候,也需要过滤这些无用的链接。 对于多媒体、图片等文件,一般是通过链接的锚文本(即,链接文本)和相关的文件注释来判断这些文件的内容。另外,许多多媒体文件中有文件属性,考虑这些属性也可以更好的了解文件的内容。 对于网页内容的提取一般采用插件的形式,通过一个插件管理服务程序,遇到不同格式的网页采用不同的插件处理。这种方式的好处在于扩充性好,以后每发现一种新的类型,就可以把其处理方式做成一个插件补充到插件管理服务程序之中。7. 硬件投入、抓取速度、一次抓取时间、抓取数据量等估算 孙子曰:凡是预则立,不预则废。强调计划的重要性。很多事情也要做到心中有数。 设计一个spider一定要考虑抓取10亿网页需要多长时间,需要多少硬盘来存,需要多少服务器来抓等。这些都可以通过估算得到一个最好/最大值的。 例如:抓取时应该使用多少台机器以及一台机器启动多少抓取进程/线程呢? 这里要考虑硬件资源情况: -- 局域网带宽 //发送速率 -- 互联网接入带宽 -- 局域网时间延迟 //1 ~ 10 ms -- 互联网时间延迟 //100 ~ 500 ms -- 服务器端接收请求、响应时间 -- CPU利用率 -- 内存大小以及利用率 -- 硬盘大小以及读写速度 -- 系统负载情况以上提到了设计spider时要着重考虑的几个问题,这只是从大的方面概略地介绍了以一下,技术其实还是一门精工细作的工作,需要技术人员不断地去打磨。 更多 上一篇:SQL,SQL2000:为何将DTS包转成作业时就会出错?(转载) 下一篇:网站防止数据被采集的十点黄金建议(转载) 相关主题推荐 工作 技术 设计 虚拟主机 海量数据 查看评论 * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场 核心技术类目 全部主题 Java VPN Android iOS ERP IE10 Eclipse CRM JavaScript Ubuntu NFC WAP jQuery 数据库 BI HTML5 Spring Apache Hadoop .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP Spark HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap 个人资料 chengg0769 访问:529203次 积分:8720分 排名:第430名 原创:268篇 转载:211篇 译文:0篇 评论:348条 文章搜索 文章分类 PB反编译与加密(12) IOS和安卓(9) PB与数据库(10) 网络相关(1) 搜索相关(0) 闲话扯起耍(1) 其他语言(4) 文章存档 2014年01月(1)2013年12月(2)2013年11月(2)2013年09月(1)2013年02月(1)2012年11月(1)2012年09月(1)2012年08月(6)2012年07月(1)2012年05月(3)2012年03月(4)2011年12月(2)2011年11月(2)2011年10月(9)2011年09月(6)2011年08月(11)2011年07月(2)2011年06月(4)2011年04月(3)2010年12月(1)2010年10月(2)2010年09月(8)2010年08月(1)2010年07月(8)2010年06月(17)2010年05月(2)2010年04月(2)2010年03月(4)2010年01月(1)2009年09月(8)2009年08月(5)2009年07月(8)2009年06月(8)2009年05月(16)2009年03月(2)2009年02月(7)2008年12月(2)2008年11月(4)2008年10月(5)2008年08月(1)2008年07月(2)2008年01月(12)2007年12月(29)2007年11月(7)2007年10月(4)2007年09月(20)2007年08月(55)2007年07月(176) 阅读排行 搜索引擎学习资源(作者:dongdonglang)(14661) 做代理网站最有效的4种宣传方法(admin9.com)(12215) 再谈powerbuilder程序防止破解的办法(终结篇,以后不再写这个问题)(8263) 程序员的SEO总结(7479) PowerBuilder DeCompiler(pb decompiler) Demo download(PB反编译,支持5-12)(6149) 浅谈Powerbuilder的未来和Powerbuilder使用者的未来(6140) 在一台联想3000G430 T1600笔记本上安装黑苹果(东皇v10.6.3)成功(6026) PB11.5,PB12 web项目初探(5752) 文件夹加密原理 [转](5713) powerbuilder反编译器开发-第一步:pbd结构分析和pbkiller分析(5630) 评论排行 浅谈Powerbuilder的未来和Powerbuilder使用者的未来(49) 程序员的SEO总结(32) 有关Powerbuilder的悲观论和乐观论(由郭贴引发的300多贴争辩想到的,也是很久就想秉明的一个观点)(22) Powerbuilder混淆,加密(powerbuilder防止反编译,pb混淆器,PB加壳,支持5-12) obfuscator for PowerBuilder(20) 戏说DataWindow的“移植”和“临摹”(19) 因为垄断形成,数据库市场将出现更多开源数据库(19) 免费软件模式之随想(18) PB11.5,PB12 web项目初探(15) 软件提交到国外的下载站的几点操作和想法(15) 关于对pbd反编译器的期待(11) 推荐文章 最新评论 安装两个BCB6控件SynEdit、mwEdit 0.92a的过程总结 jiduxiaozhang12345: 请问BCB6的第三方控件在哪下载啊?急求 Powershield一个疑似的BUG zhj149: 高手啊,看你的文章,感觉你玩pb已经到了极致的境界了,我自认为pb还不错,和你比起来,还是差了太多了 软件提交到国外的下载站的几点操作和想法 u012353953: 楼主在吗?有个问题请教,看到请加我QQ,谢谢。17493589 Lucene(Nutch)距离商业文本搜索引擎还有多远?(转载) koubi1986: 你好!请教一些问题:请问一下1。你是如何把nutch抓取到的二进制内容,在项目中读取的。2。nutc... 看一个商业共享软件是如何在下载站刷下载量来作弊的! u011506701: 您的判断是有误的,像我研究的刷量算法你就根本看不出来,出现的曲线图跟正常的一模一样的,附:刷量是最好... 垂直搜索引擎蜘蛛的基本解决方案(编程实例:所以推荐) gis101989: 你好,我正在写面向主题搜索引擎结合地理信息的论文,很多地方不懂,能加个扣扣吗?非常感谢你的帮助,我的... 浅谈Powerbuilder的未来和Powerbuilder使用者的未来 hosthelp: PB的最大缺点就是:(其实很简单)过时了。 服装过时就没人穿了, 电器过时就没人买了, 明星过时(过... 三岁小孩开发搜索引擎,搜索引擎白热化[原创] rongzi1987: 顶一个。先顶再看 再谈powerbuilder程序防止破解的办法(终结篇,以后不再写这个问题) hua2000: 顶顶更健康正在研究反向工程 有个傻B说破解了我的软件—哈哈!黄金屋手机MP3.MP4.3GP.电影.下载系统 ljx811216: 真有这事,看看 我的未来方向 pconline/asp.net周金桥老师的aspnet 友人Blog 旧博客在sina Bluesen的语音卡开发平台 JackXu的开源语音卡框架 经验丰富的好友:杨光的专栏 蓝星际语音平台,Koodoo语言 Lucene改造者-yuetiantian 西部.阿呆's blog manesking:全文检索c/c fullfocus研究lucene,nutch 黄国酬的博客 把“天轰穿”的asp.net 雨松.安卓