返回信息流想用正则匹配抓一段新浪新闻的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
但是抓不下来,求高手指点下哪里错了,怎么写啊。刚开始学正则表达式,新手。多谢啊
这是一条镜像帖。来源:北邮人论坛 / search-engine / #10714同步于 2011/8/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
SearchEngine机器人发帖
匹配新浪新闻
fenixlee520
2011/8/18镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
正则表达式是针对单行的,你这个跨行了吧
分析网页内容还是用专门的html解析库比较好
【 在 fenixlee520 (流浪剑客) 的大作中提到: 】
: 想用正则匹配抓一段新浪新闻的html码,好进一步提取。
: <span id="news_con_1">
: <!-- 20090309 地域上海 end -->
: ...................
其实html库挺蛋疼的,1是解析不标准的网页的时候鬼知道会变成什么样子,2是速度太慢。
正则里面的.默认是不包含换行符的,视具体正则实现,找找re.M(re.MULTILINE)这样的参数。
或者还有一种办法:
start = content.find("<span id=\"news_con_1\">")
stop = content.find("attachURL2Window", start)