BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / search-engine / #10714同步于 2011/8/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SearchEngine机器人发帖

匹配新浪新闻

fenixlee520
2011/8/18镜像同步4 回复
想用正则匹配抓一段新浪新闻的html码,好进一步提取。 <span id="news_con_1"> <!-- 20090309 地域上海 end --> <div class="mdlist" id="newsListTop"> <ul class="list_009" id="impoLisTop"> <!--每行不超过25.5个字--> <li><a href="http://news.sina.com.cn/z/Bidenfh/index.shtml" target=_blank>习近平与美国副总统拜登会谈</a> <a href="http://news.sina.com.cn/c/2011-08-17/215223007511.shtml" target="_blank">拜登否认美经济衰落</a> <a href="http://news.sina.com.cn/z/Bidenfh/index.shtml" target="_blank">专题</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/101423011274.shtml" target=_blank>李克强:支持千名港大师生内地学习</a> <a href="http://news.sina.com.cn/c/2011-08-18/081823010460.shtml" target=_blank>问候遇难义工家属</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/022823007987.shtml" target="_blank">王勇平:不愿再接触媒体</a> <a href="http://news.sina.com.cn/c/2011-08-18/030423008049.shtml" target="_blank">级别未变</a> <a href="http://news.sina.com.cn/pl/2011-08-18/064123009484.shtml" target="_blank">评:别忽视寒蝉效应</a></li> <li><a href="http://weather.news.sina.com.cn/news/2011/0818/67843.html" target="_blank">四川重庆今日将有超40℃高温</a> <a href="http://news.sina.com.cn/c/2011-08-17/235323007710.shtml" target="_blank">贵州14县市特旱</a> <a href="http://slide.news.sina.com.cn/c/slide_1_20490_18788.html" target="_blank">组图</a></li> <li><a href="http://finance.sina.com.cn/china/hgjj/20110818/101110337593.shtml" target="_blank">7月70个大中城市房价仅有1个城市同比下降</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-17/211223007456.shtml" target=_blank>央行通报四个冠字号码假币 可凭眼看手摸识别</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/040023008520.shtml" target="_blank">慈善总会称收5万管理费合法</a> <a href="http://news.sina.com.cn/c/2011-08-18/030423008063.shtml" target="_blank">1700万元捐赠品疑被变卖</a></li> <li> <a href="http://news.sina.com.cn/z/71jianghua/index.shtml" class="linkRed01" target="_blank">七一讲话</a> <a href="http://news.sina.com.cn/pc/2011-07-17/27/6455.html" target="_blank" class="linkRed01">党史上今天</a> <a href="http://news.sina.com.cn/pl/2011-08-18/094123011073.shtml" target="_blank">评:怎么会有街头犯罪的罪名</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/055723009262.shtml" target=_blank>中央部门因公出国预算不降反升 51个单位增费用</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/040023008502.shtml" target="_blank">青基会称收取中非希望工程10%管理费合理</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/061823009440.shtml" target="_blank">云南铬渣堆癌症村最小患者9岁</a> <a href="http://news.sina.com.cn/c/2011-08-18/074523009890.shtml" target="_blank">环保局劝上访者不追究</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/040023008493.shtml" target="_blank">故宫称景区外违规展览非其所办</a> <a href="http://news.sina.com.cn/c/p/2011-08-18/030423008048.shtml" target="_blank">承认丢失部分古籍</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-18/040023008490.shtml" target="_blank">首批部委发言人八成已换岗 留任者近半获提升</a></li> <li><a href="http://news.sina.com.cn/c/sd/2011-08-18/010023007800.shtml" target="_blank" >北大院长落选中科院院士 称再不候选</a> <a href="http://news.sina.com.cn/pl/2011-08-18/074123009880.shtml" target="_blank" >评:缘何出局</a></li> <li><a href="http://news.sina.com.cn/c/p/2011-08-18/030423008064.shtml" target="_blank">北京首部小学生性教材引热议</a> <a href="http://news.sina.com.cn/c/2011-08-18/043023008692.shtml" target="_blank">家长质疑系黄色漫画</a></li> <li><a href="http://news.sina.com.cn/c/2011-08-17/231823007652.shtml" target="_blank">云南迪庆违规在景区公路设卡按游客人数收费</a></li> <li><a href="http://mil.news.sina.com.cn/nz/2011elshz/index.shtml" target="_blank">俄称T50战机全球需求量600架</a> <a href="http://slide.mil.news.sina.com.cn/zt/2011elshz/" target="_blank">图集</a> <a href="http://mil.news.sina.com.cn/nz/2011elshz/index.shtml" target="_blank">专题</a></li> <li><a href="http://live.video.sina.com.cn/room/ent2" target="_blank" class="liveNewsLeft linkRed01"> 张涵予李宗翰等正做客聊新《水浒传》</a></li> <!-- 大片推广位 勿动 --> </ul> </div> <div class="mdlist" id="newsListTop" style="padding-top:0px;"> <ul class="list_009" id="newsListBtm"> <li> <a href="http://han.house.sina.com.cn/zt/lvyoudichan2011/index.shtml" target="_blank">旅游地产峰会19日开幕</a> <a href="http://gz.house.sina.com.cn/news/2011-08-18/10083888018.shtml" target="_blank">7月大中城市房价同比下降仅1城</a> </li> <li id="impoLis002Top"><a class="videoNewsLeft" href="http://video.sina.com.cn/weiboshow/index.shtml" target=_blank style="color:#FF0000">微博秀:曾轶可清唱蓝精灵</a> <a href="http://live.video.sina.com.cn/play/ent/chatshow/7522.html" target=_blank>孟庭苇回顾纯真年代</a> </li> <script type="text/javascript"> var impoLis002Top = document.getElementById('impoLis002Top'); if (typeof(impoLis002Top.firstChild.href) != "undefined") { if (impoLis002Top.firstChild.href.indexOf('?') < 0) { impoLis002Top.firstChild.href += "?opsubject_id=top1"; } else { impoLis002Top.firstChild.href += "&opsubject_id=top1"; } } </script> <li><a href="http://video.sina.com.cn/movie/" onclick="movieCount(this);" target="_blank" style="color:#FF0000">大片:</a> <a href="http://video.sina.com.cn/movie/detail/shuihu" onclick="movieCount(this);" target="_blank" style="color:#FF0000" >新版《水浒传》</a> <a href="http://video.sina.com.cn/movie/detail/wxkjzgsrl" onclick="movieCount(this);" target="_blank" style="color:#FF0000">高手如林</a> <a href="http://video.sina.com.cn/m/yywlq_61431427.html" onclick="movieCount(this);" target="_blank" style="color:#FF0000">一夜未了情</a> <a href="http://video.sina.com.cn/m/kb_61444847.html" onclick="movieCount(this);" target="_blank" style="color:#FF0000">魁拔</a> </li> <script type="text/javascript"> function movieCount(el){ var key = el.innerText || el.textContent; var markvalue = decodeURI("www2011-08-18_"+key); var namevalue = decodeURI("大片流量统计_"+key); (new Image()).src = "http://mark.sina.com.cn/v2/DoData.php?p_mark=counter&i_mark="+markvalue+"&name="+namevalue+"&type=get&question[0]=41&option_41=168&ext1=www2011-08-18"; }; </script> </ul> </div> <!-- nosmb begin --> <script language="javascript" type="text/javascript"> (function() { function addEvent(obj, eventType, func) { if(obj.attachEvent) { obj.attachEvent("on" + eventType, func); } else { obj.addEventListener(eventType, func, false); } }; function attachURL2Window(id) { var links; try { links = document.getElementById(id).getElementsByTagName("a"); }catch(e) { links = []; } for (var i = 0, len = links.length; i < len; i++) { if (/sina\.com\.cn.*?\/2011[\-\/]?\d{2}[\-\/]?\d{2}/.test(links[i].href)) { addEvent(links[i], "mousedown", function(e) { var w = window, evt = e || window.event; var target = evt.target || evt.srcElement; var url = target.href; url = url.replace(/\s*$/, "").replace(/^\s*/, ""); w.cancelMediaBlog = w.cancelMediaBlog || {}; w.cancelMediaBlog[url] = true; }); } } }; attachURL2Window("news_con_1"); 我写成了<span id=\"news_con_1\">.*attachURL2Window 但是抓不下来,求高手指点下哪里错了,怎么写啊。刚开始学正则表达式,新手。多谢啊
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
Xer机器人#1 · 2011/8/23
正则表达式是针对单行的,你这个跨行了吧 分析网页内容还是用专门的html解析库比较好 【 在 fenixlee520 (流浪剑客) 的大作中提到: 】 : 想用正则匹配抓一段新浪新闻的html码,好进一步提取。 : <span id="news_con_1"> : <!-- 20090309 地域上海 end --> : ...................
liujianliuku机器人#2 · 2011/9/25
用htmlparser,好像这么叫
zzcc机器人#3 · 2011/9/26
其实html库挺蛋疼的,1是解析不标准的网页的时候鬼知道会变成什么样子,2是速度太慢。 正则里面的.默认是不包含换行符的,视具体正则实现,找找re.M(re.MULTILINE)这样的参数。 或者还有一种办法: start = content.find("<span id=\"news_con_1\">") stop = content.find("attachURL2Window", start)
simonsu机器人#4 · 2011/9/26
没有htmlparser 正则也可 没有正则 字符串匹配也可 没有字符串匹配 人工拷贝也可。