过年了散点分。同时有个比较奇怪的想法,就是如何判断某个网页的HTML中的正文部分即主内容部分?(假设每张页面都是文章页,包含标题和主内容)
什么逻辑可以判断,具体实现可以另议,每个网站的主内容页HTML标签是不同的,判断好像比较难比如
<html><body><h1>this is title</h1><div>this is content.</div></body><html>如何判断出来this is content是网页主信息,这里的this is content一般是一篇含有基本HTML标签的文章。我的想法是判断网页HTML中连续的、非HTML标签的字符最多的位置就是内容所在位置。
大家有什么想法说说看,不说具体实现只说想法也可以。觉得百度应该有这样的技术,智能抽取网页的主内容。

解决方案 »

  1.   

    接分
    下源码 送U盘  http://vip.hur.cn
      

  2.   

    应该是有,只不过那应该是BAIDU自己设置是如何识辨的``````
      

  3.   

    如果每个页面都是有规律的就好解决了,都是有一定格式的HTML,我觉得baidu因该会更具那些html的某些关键字比如<div class="content"></div>来判断这段内容的权重http://topic.csdn.net/u/20070826/12/87c77961-37a4-4681-9b93-372372953bbc.html
    之前我用Python做了一个去拿baidu的列表的
      

  4.   


     asp.net : this.Page.Form.InnerHtml;
     js: 文档boyd. InnerHtml;
      

  5.   

    你想抓取的东西应该是要有规则的,不管怎么说,你应该可以找出HTML,分析一下就行了。
      

  6.   

    不觉得搜索引擎有必要认识内容网页的正文和标题
    一般只对html标签做匹配分析如果真需要这么做的话,只能定义一些粗略的规则来匹配标签。
    比如,在同一个div内的如果含有h1,h2,区别接下来的div。
    这种考虑就要多了,基本上不能找到一个适合所有网站设计的规范。
      

  7.   

    asp.net : this.Page.Form.InnerHtml; 
    这个会引发异常.
    取内容的话用WebResponse.GetResponseStream()
      

  8.   

    我想百度也没有这种玩意吧,无非是在之前看了看要查的网站人工定义了规律而已。
    你那种感觉实在很难实现,要考虑的情况太多,当然最重要的是无法去判断哪个才是标题,哪个才是CONTENT。
    RSS的话也不是每个网站都有的。顺便接点分
      

  9.   

    当然有, 如果连这个都不行, 还谈什么搜索引擎.你的需求是页面分析的一部分 ,而且真实页面分析的复杂度远远大于你这个需求.有超链分析, javascript分析等等很多不同的需求.
      

  10.   

    现在的页面分析技术早已经不是局限于纯文本,按照字面意思分类.比如近年来研究的模板分析技术. 一类网页会有一类模板, 比如论坛, 不管是动网bbs, PHPWind等不同类型的bbs, 它们的页面组成, 都有相似的特征.通过对网页模板的分析, 我们可以大致确定它是哪一类网页, 它的关键字权重, 信息抽取优先级等等信息.
      

  11.   

    如果有固定的html标签格式很好做啊!用Match类挖数据!