import urllib2, re
def fetch_links(furl,burl,stag,etag):
'''
抓取网页新闻
@param furl 抓取网页地址
@param burl 网页链接的baseurl,比如凤凰网的链接:<a href="/news/guoji/dir?cid=14&mid=7sdLRL">国际</a>, 根据baseurl可返回<a href="http://i.ifeng.com/news/guoji/dir?cid=14&mid=7sdLRL">国际</a>
@param stag 抓取网页链接的开始标签
@param etag 抓取网页链接的结束标签
@return 加了baseurl的链接列表
说明: 正则表达式中 '.*?', 采用非贪婪模式匹配多个字符
'''
req = urllib2.Request(furl)
fd = urllib2.urlopen(req)
content = fd.read()
fd.close()
m = re.findall(stag+'.*?'+etag,content)
return [j.replace('<a href="', '<a href="'+burl) for j in m]