01
2012-07

解决OTCMS采集"南方周末"关键词问题

一直很喜欢南方周末,喜欢就想收藏,这次的目标是利用OTCMS采集"十大热门"栏目.

第一步设置:
*目标网页编码:utf-8
*采集网址URL:http://www.infzm.com/news.shtml
其它根据情况修改

第二步设置:
*列表开始代码: <div id="Top10" class="mods_top10_default frame">
*列表结束代码: <div class="footer"> 
*链接开始代码: <li><a href="
*链接结束代码:  TARGET="_blank"

第三步设置:
标题开始代码: <h1 class="articleHeadline clearfix">
*标题结束代码: </h1>
*正文开始代码: <!--文章内容-->
*正文结束代码: <div id="pageNum" class="clearfix">
*来源开始代码: <span class="articleSource"><em>来源:</em><em>
*来源结束代码: </em></span>
*关键字词开始代码: <li><strong>标签</strong></li>
*关键字词结束代码: </ul>

这下基本OK啦,不过关键词有点问题.采集到的关键词不会区分,如"神舟九号 天宫一号 载人航天",采集完变成了一个关键词"神舟九号天宫一号载人航天".
源码是以<li>标签区分的:<li class="tagContent"><a href="http://tags.infzm.com/tags/tagsearch/tags/%E7%A5%9E%E8%88%9F%E4%B9%9D%E5%8F%B7/">神舟九号</a></li><li class="tagContent"><a href="http://tags.infzm.com/tags/tagsearch/tags/%E5%A4%A9%E5%AE%AB%E4%B8%80%E5%8F%B7/">天宫一号</a></li><li class="tagContent"><a href="http://tags.infzm.com/tags/tagsearch/tags/%E8%BD%BD%E4%BA%BA%E8%88%AA%E5%A4%A9/">载人航天</a></li>
采集后经过过滤HTML,变成了神舟九号天宫一号载人航天.

解决办法就是修改采集代码,找打admin目录下的collRun.asp,打开后看586行.其中Html_GetStr是得到关键词的源码(带li标签),RegExpStr用来过滤HTML,之后是keyStr = Replace(Replace(Replace(keyStr,"|",",")," ",","),",",",")替换分隔符.正是因为这里过滤HTML后不存在分隔符,造成了所有关键词变成了一个关键词.

因此我们可以在替换分隔符前对源码进行修改,在</li><li 之间插入一个分隔符,将587行换成以下代码:
       keyStr = Html_GetStr(hrefCode,GetAppl("CI_keyCode1"),GetAppl("CI_keyCode2"),False,False)
       keyStr =Replace(keyStr,"</li><li","</li>,<li")
       keyStr = Trim(RegExpStr(keyStr,"html"))

可以到这里看效果:http://www.awerr.com/Web/news/?list_7.html

« 上一篇下一篇 »

相关文章:

留言列表:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。