求教:怎样从html文件中提取出文本

ustcmicro 2008-07-22 02:16:34
想从html文件中提取出文本,我写的程序是提取出'>' and '<'之间的内容,但仍然有很多乱七八糟的符号,我觉得这个很难,因为网页内容、形式千差万别,我看国外有人用神经网络算法,利用文本密度来提取,已经心生寒颤。
下面是个提取后的文档(原文 http://sports.sina.com.cn/g/2008-02-01/07313454608.shtml ):

07/08意甲联赛第20轮专题 |07/08意甲联赛第21轮专题  意甲积分榜-->意甲冬季转会一览:四强各有动作 新转会王超尤文_国际足坛-意大利_NIKE新浪竞技风暴_新浪网 difDay * 24 * 60 * 60 * 1000){0 && image.height>0){= iwidth/iheight){iwidth){ iheight){ -1?'MSIE':_S_BN_.appName;var _S_NAV_=_S_BN_.appVersion;var _S_PREF_=_S_PWD_.referrer.toLowerCase();var _S_PURL_=_S_PWDL_.href.toLowerCase();var _SP_MPID_="";=0){_S_ET=_S_ET;}else{var _S_ET=0;}}catch(e){var _S_ET=0;} var _S_GIDT=0;var _S_EXT1="";var _S_EXT2="";-1?'https://':'http://';var _S_BCNDOMAIN="beacon.sina.com.cn";var _S_CP_RF=_S_HTTP+_S_BCNDOMAIN+"/a.gif";var _S_CP_RF_D=_S_HTTP+_S_BCNDOMAIN+"/d.gif";var _S_CP_FC=_S_HTTP+_S_BCNDOMAIN+"/fc.html";=end){end=_S_PWDC_.length;}ckValue=_S_PWDC_.substring(start, end);return ckValue;}0)?pMeta[0].content:"";}0) {if(pbidList.length>=3){_S_DPID_="-9999-0-"+pbidList[1]+"-"+pbidList[2];}return pbidList[0];}} else{return "0";}} catch(e){return "0";}}";}}=_S_IFH)&&(_S_PWD_.body.clientWidth>=_S_IFW)){return false;}else{return true;}}catch(e){return true;}}}=0){appver=parseInt(_S_NAV_.substring(p+5));if(3=0){jsver=1.5;}}return jsver;}0){return;}++_S_ET;_S_PW_.setTimeout("_S_gsSID()",500);_S_PW_.setTimeout("_S_pBeacon('"+pid+"','"+ext1+"','"+ext2+"',0)",3000);}catch(e){}}sina_suda_web_push_tunnel_DoFSCommand(command, args);首页新闻体育娱乐财经股票科技博客播客视频汽车房产游戏女性读书考试星座天气短信爱问邮箱导航通行证首页新闻体育娱乐财经股票科技博客播客视频汽车房产游戏女性读书考试星座天气短信导航 /i,"");/i,"");/i,""); 16)退出"+unipro_login_nickname+",";退出新浪过客,";";不支持Flash网页新闻视频音乐图片本地知识人博客高级搜索体育> 国际足坛-意大利> 07/08意甲联赛第20轮> 正文 意甲冬季转会一览:四强各有动作 新转会王超尤文http://sports.sina.com.cn 2008年02月01日07:31  新浪体育  新浪体育讯 意大利当地时间昨晚19点,北京时间今天凌晨,意甲冬季转会市场的大门已经关闭,30天意甲20支球队对阵容分别进行了调整和增补,不过四大豪门动作不大,罗马一个没买,尤文图斯只是用西索科和斯滕达尔多替换了阿尔米隆、布姆松、克里西托和奥利维拉,AC米兰引进帕托是夏天早已定下的事情,国际米兰只补充了马尼切,相比之下,中上游的球队相对活跃,佛罗伦萨得到了炙手可热的达-科斯塔和卡西亚,而那不勒斯则花费了2150万欧元,这也让他们超越了尤文图斯,成为了在意甲去年夏天和今年冬天总计花钱最多的球队。  20支球队具体转会情况如下:  亚特兰大  转入:帕多因(中场,维琴察,买断全部所有权)、拉多万诺维奇(中场,塞尔维亚萨尔迪特,自由转会)、保卢奇(前锋,乌迪内斯,租借)、菲索雷(后卫,维琴察,租借)  转出:赞帕尼亚(前锋,维琴察,自由转会)、后卫(布里维奥,维琴察,租借)、贝拉尔迪尼(中场,维琴察,买断全部所有权)  下赛季加盟:巴尔德斯(中场,莱切,自由转会)  卡利亚里  转入:斯托拉里(门将,AC米兰,200万)、耶达(前锋,里米尼,250万)、、卡佩奇(门将,拉文纳,租借)、维克多-戈麦斯(中场,葡萄牙里奥阿维,租借)、科素(中场,维罗纳,租借回归)、古贝拉奇(门将,斯洛文尼亚普利莫耶,租借)、罗萨诺(中场,苏格兰格拉斯哥流浪者,租借)  转出:布代尔(中场,恩波利,自由转会)、马鲁奥科(门将,拉文纳,租借)、比泽拉(后卫,以色列特拉维夫马卡比,租借)、大达戈斯蒂诺(中场,特雷维索,租借)、福尔丁(中场,维琴察,自由转会)  卡塔尼亚  转入:M-希尔维斯特里(后卫,阿根廷博卡青年,租借)、阿尔瓦雷斯(后卫,阿根廷大学生,150万)、皮亚(前锋,特雷维索,租借)、博维奥(中场,希腊帕纳辛奈科斯,自由转会)、罗西(门将,特列斯蒂纳,租借)  转出:米涅利(后卫,特列斯蒂纳)、博维奥(中场,巴西科林蒂安,租借)、伊拉玛(中场,阿根廷纽维尔斯老男孩,租借)、纳尔迪尼(中场,阿维利诺,20万)、米莱西(中场,斯佩济亚,租借)  恩波利  转入:尼克莱特(中场,蒙特贝卢纳、自由转会)、布代尔(中场,恩波利、自由转会)、穆萨奇(中场,马塞塞,20万)  转出:埃德尔(后卫,佛罗伦萨,租借)、普雷维特(中场,克罗托内,租借)  佛罗伦萨  转入:卡西亚(前锋,皮亚琴察,450万共有权)、帕帕-瓦伊戈(前锋,热那亚,100万共有权)、达-科斯塔(后卫,荷兰埃因霍温,450万)、赞帕科斯塔(中场,佩斯卡拉,共有权)  转出:范登博雷(后卫,热那亚,100万共有权)、卢波利(前锋,特雷维索,租借)、巴尔扎雷蒂(后卫,巴勒莫,400万)、达布罗西奥(门将,波腾扎,10万)、帕琴扎(中场,那不勒斯,450万)  热那亚  转入:克里西托(后卫,尤文图斯,租借)、范登博雷(后卫,佛罗伦萨,100万共有权)、马谢洛(中场,乌拉圭西班牙人,50万)、维尔森(前锋,巴西科林蒂安,60万)、本-杰米亚(后卫,佩格克莱马,不详)  转出:小里瓦尔多(中场,波藤萨)、帕帕-瓦伊戈(前锋,佛罗伦萨,100万共有权)、马斯切罗(后卫,巴里,租借)、贝加(后卫,布雷西亚,30万)、科波拉(中场,锡耶纳,租借)、博尔赫塞(后卫,佩斯卡拉,共有)  国际米兰  转入:马尼切(中场,西班牙马德里竞技,租借),恩-泽(中场,维罗纳)、里瓦斯(前锋,斯佩济亚,租借回归)  转出:阿德里亚诺(前锋,巴西圣保罗,租借)、马卢菲(中场,荷兰图文特,租借)、阿方索(门将,威尼斯,租借)、菲尔科尔(中场,格罗塞托,租借)  尤文图斯  转入:西索科(中场,英格兰利物浦,1100万)、斯滕达尔多(后卫,拉齐奥,租借)  转出:克里西托(后卫,热那亚,租借)、奥里维拉(中场,乌拉圭佩纳罗尔,租借)、阿尔米隆(中场,法国摩纳哥,租借)、布姆松(后卫,里昂,300万)  下赛季加盟:埃克达尔(前锋,瑞典布诺马博亚,100万)、梅尔贝里(后卫,英格兰阿斯顿维拉,自由转会)  拉齐奥  转入:罗兰多(后卫,葡萄牙比兰伦斯,40万)、比安奇(前锋,英格兰曼城,租借)、卡尔达乔(中场,乌拉圭民族,200万)、拉杜(后卫,罗马尼亚布加勒斯特迪那摩,租借)、达博(中场,英格兰曼城,100万)、罗泽纳尔(后卫,纽卡斯尔,不详)  转出:斯滕达尔多(后卫,尤文图斯,租借)、斯卡洛尼(后卫,西班牙马洛卡,100万)  下赛季加盟:卡里佐(门将,阿根廷河床,500万)  利沃诺  转入:希德尼(后卫,巴西纽迪高,50万)、瓦莱蒂(中场,都灵,租借)  转出:无  AC米兰  转入:帕托(前锋,巴西国际,2200万)、格里米(后卫,里斯本竞技,租借回归)、斯托拉里(门将,西班牙莱万特,租借回归)、阿尔贝塔奇(后卫,博洛尼亚,共有权)  转出:格里米(后卫,里斯本竞技,租借)、斯托拉里(门将,卡利亚里,200万)  那不勒斯  转入:曼尼尼(中场,布雷西亚,800万)、纳瓦罗(门将,阿根廷青年,400万)、桑塔克罗斯(后卫,布雷西亚,500万)、帕琴扎(中场,佛罗伦萨,450万)  转出:布奇(前锋:博洛尼亚,租借)、加蒂(中场,摩德纳,租借)、德-泽尔比(前锋,布雷西亚,租借)、马尔多纳多(后卫,切沃,租借)  巴勒莫  转入:巴尔扎雷蒂(后卫,佛罗伦萨,400万)、卡尼(后卫,佩斯卡拉,40万)、迪马特奥(中场,佩斯卡拉,50万)  转出:布里恩扎(前锋,雷吉纳,租借)、迪亚纳(后卫,都灵,250万)、皮萨诺(后卫,都灵,租借)  下赛季加盟:德-梅洛(前锋,法国勒芒,自由转会)、吉奥维奥(前锋,瓦雷塞,30万)  帕尔马  转入:C-卢卡雷利(前锋,乌克兰顿涅茨克,500万)、安东内利(后卫,巴里,租借)  转出:卡尔多内(后卫,切塞纳,租借)、帕珀尼(前锋,切塞纳,租借)、通贝西(后卫,阿维利诺,租借,租借)  雷吉纳  转入:斯图亚尼(前锋,乌拉圭达努比奥,150万)、齐里洛(后卫,西班牙莱万特,租借)、布里恩扎(前锋,巴勒莫,200万)、马金瓦(前锋,拉齐奥,租借)  转出:切鲁宾(后卫,阿维利诺,租借)  罗马  转入:无  转出:法蒂(中场,法国南特,租借)、巴鲁索(中场,土耳其加拉塔萨雷,租借)、库弗尔(后卫,荷兰阿贾克斯,自由转会)、安德雷奥利(后卫,维琴察,租借)  桑普多利亚  转入:费拉里(前锋,萨苏奥洛,30万)、古兰(中场,塞尔维亚游击队,50万)、斯卡皮尼(前锋,特纳纳,租借)、米利昂尼科(后卫,皮亚琴察,50万)  转出:弗蒂(前锋,梅西纳,租借)、巴斯特里尼(后卫,摩德纳,租借)  锡耶纳  转入:博尔塔(前锋,乌拉圭河床,300万)、古斯马奥(门将,自由球员)、里加诺(前锋,西班牙莱万特,租借)、卡尔亚(中场,皮亚琴察,租借)、科波拉(中场,热那亚,租借)  转出:布奇(前锋,那不勒斯,租借回归)、小贝隆(中场,希腊PAOK,租借)、科尔维亚(前锋,莱切、租借)、格里米(后卫,AC米兰,租借回归)、古斯马奥(门将,切塞纳,租借)  都灵:  转入:迪亚纳(后卫,巴勒莫,250万)、皮萨诺(后卫,巴勒莫,租借)  转出:无  乌迪内斯  转入:莫雷诺(中场,巴西博塔福格,租借)  转出:西沃克(中场,捷克布拉格斯拉维亚,租借)、奥斯奥(中场,巴西巴拉纳,租借)、保卢奇(前锋,亚特兰大,租借)、博江斯基(中场,莱切,租借)  注:括号内“买断全部所有权”指该球员上半赛季已经在队中,拥有一半所有权,冬季俱乐部买断了他的全部所有权。  (Galca)   新浪网关于版权的最新声明-->-->【发表评论 _COUNT_条 】 0){'+ GetStateTxt( ycyjaddate[j].state) + ycyjaddate[j].title + ' ' + ycyjaddate[j].time + '';'';'+strArray[i]+'';''; 1){' + GetObj("scrollTextYCYJ").innerHTML + GetObj("scrollTextYCYJ").innerHTML;爱问(iAsk.com)';Powered By Google'; 网页新闻Powered By Google【我的2008:每周110,000现金等你拿】相关热词搜索足球论坛】【收藏此页】【大 中 小】【打印】【关闭】不支持Flash相关专题:07/08意甲联赛第20轮专题 |07/08意甲联赛第21轮专题  意甲积分榜更多关于 尤文 的新闻两战四球国米版帕托也疯狂 尤文出局布冯替补是罪魁 2008-2-1 03:22a329:西索科五年合约留后手 小议尤文中场建设 2008-1-31 17:11周亮:意大利杯惨烈国家德比 尤文虽败却得重生精髓 2008-1-31 17:04热刺后防疑推倒重来大幅重组 联赛杯决赛双方引援最劲 2008-1-31 16:56马竞主帅称正争取尤文大将 墨西哥门神恐无缘披"床单" 2008-1-31 16:29蓝黑我心:不仅仅是晋级 国米擒下尤文的深层价值 2008-1-31 14:30视频-意大利杯尤文2-3国米 蓝黑17岁神童梦幻两球 2008-1-31 13:01国米仅出4主力即擒杀尤文 旷世强阵替补11人可冲欧冠 2008-1-31 12:08新援加盟尤文收获防线空霸 三组后防拉涅利补出新亮点 2008-1-31 10:33Bob:《马说》指导引援策略 看尤文的伯乐与千里马 2008-1-31 10:29 ·《对话城市》直播中国 ·新浪特许频道免责公告 ·企业邮箱换新颜·邮箱大奖等你拿不支持FlashDUNK登峰造极圈打上我的烙印07性价比之王放胆做赢取NIKE装备现在开始你的比赛奥尼尔新款君临Five控球后卫Five得分后卫 Five珍藏大前锋Five珍藏中锋Five珍藏小前锋--> -->不支持Flash [新浪公益]|爱心人物:阳光天使孙俪 ·梁咏琪:爱在北方·征集环保布袋子设计图 ·CCTV春节公益盛典·女企业家商会慈善晚会 ·扶贫中国行表彰大会·用爱汇聚生命之河晚会 ·公众公益捐赠调查·挽救血液病患儿慈善晚会 ·08年新浪冠军项目·更多流行彩铃想换就换 DisplayAd();竞技风暴意见反馈留言板 电话:010-82628468  欢迎批评指正新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑版权所有var iask_keywords_bid="artibody";var iask_keywords_lid="hotwords_link";var iask_keywords_fid="hotwords";var iask_keywords_min=24;var iask_keywords_len=72;';' +' +' +' +';Google提供的广告';' + ' +' + ' + '+'' + ' 1) {' + ' +google_ads[i].line1 + '' + google_ads[i].line2 + " " + google_ads[i].line3 + '' +'' + google_ads[i].visible_url + '';';U){F="1";document.cookie="vjlast="+Math.round(X.getTime()/1000)+";"+H+";domain="+wrDomain+";path=/;"}if(L!=""){B=B+"&r="+escape(L)}if(F!="0"){B=B+"&n="+G}if(Q!="0"){B=B+"&u="+Q}var V;var A=vjGetAcc();var W=vjGetDomain();V=wrUrl+"a.gif?a="+X.getTime().toString(16)+"&t="+escape(I)+"&i="+escape(E)+"&b="+escape(document.location)+"&c="+A+B+"&ck="+W;document.write('')}function vjGetAcc(){var B=document.location.toString().toLowerCase();var C=(B.split("/"))[2];var A=wratingAccArray[C];if(typeof (A)=="undefined"){A=wratingDefaultAcc}return A}function vjFlash(){var _wr_f="-",_wr_n=navigator;if(_wr_n.plugins&&_wr_n.plugins.length){for(var ii=0;ii=2;ii--){try{var fl=eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash."+ii+"');");if(fl){_wr_f=ii+".0";break}}catch(e){}}}}return _wr_f}function vjHash(B){if(!B||B==""){return 0}var D=0;for(var C=B.length-1;C>=0;C--){var A=parseInt(B.charCodeAt(C));D=(D
...全文
324 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyzzyh008 2008-07-23
  • 打赏
  • 举报
回复
用C#写的
using System.net
string strUrl="http://sports.sina.com.cn/g/2008-02-01/07313454608.shtml ";
WebClient MyClient = new WebClient();
byte[] MyBytes = MyClient.DownloadData(strUrl);
string MyInfo = Encoding.Default.GetString(MyBytes);
MyClient.Dispose();
Console.WriteLine(MyInfo);
飞起来一脚 2008-07-23
  • 打赏
  • 举报
回复
直接提取不行,建议用某种编程语言,利用正则表达式替换后可以获得。
例如c#
using System.Text.RegularExpression;//引入命名空间

然后定义一个正则表达式:
s = System.Text.RegularExpressions.Regex.Replace(s, @"<(?!/?script|\!--)[^>]+>","", RegexOptions.IgnoreCase);
s就是你的那一大段代码

61,112

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧