高分征集关于html解析的点子

来源:百度知道 编辑:UC知道 时间:2024/05/22 13:40:43
题目:解析来自各个网站包含新闻的html页面(中、日、英文),要求程序能正确识别出新闻的标题、日期、正文。并能将他们准确完整的抓取,保存到数据库中。
要求:描述详细。
这是一个很难的题目,在杂乱的html如何识别标题、日期、正文。
希望大家集思广意,哪怕是一个想法,一个思路,方向。
如果有好的建议,我还会加分。
<title>标记往往与新闻正文上方的标题不完全相同,并且存在大量新闻在<head>标记中的<title>内容是空的情况,所以我们的目标首要还是如何抓去正文上方的标题,由于要跨越中日英三种网站,我们目前的想法是首先锁定新闻标题,如果可以锁定标题,那么标题下面第一个时间格式的字符串就是新闻的时间,而时间后出现的第一个逗号或句号就是新闻正文的第一句话。
而新闻标题是否能够成功取得是关键的第一步,我们目前有以下假设,title是正文中出现的非超链接的,黑色的,最大的字体,然后我们将可以改变字体大小颜色的html标记按照由大到小的顺序列表,一一与html文件作判断。
希望大家能多提供类似的想法。我会继续增加分数,如果你有很完善的答案,我们一经采纳,还会加分。

解决下拉列表框显示在层上面的问题
在层里面加上一个iframe,优先级就比下拉列表框高了
<iframe style="position:absolute; visibility:inherit; top:0px; left:0px; width:640px; height:100%; z-index:-1;"></iframe>

颜色渐变
style="filter:progid:DXImageTransform.Microsoft.Gradient(startColorStr='#FFFFFF', endColorStr='#3F8CDA', gradientType='1')"

截断英文单词
style="word-wrap:break-word" style="word-break:break-all"

带阴影的文字
style="filter: DropShadow(Color=#dddddd, OffX=1, OffY=1);height:12px;font-family:Verdana;CURSOR: hand"

文字的白边
<P style="MARGIN-LEFT: 3px; MARGIN-TOP: 5px">

文字的间距
style="LETTER-SPACING:1px;line-height:150%"

表格不随内容撑大
style="table-layout:fixed;"

固定的一个地方显示较多数据
简单将你的控件放在一个DIV中将overflow属性设置成auto
<div style="height:400px;width:200px;overflow:auto">
<asp:datagrid