python抓取指定网址链接并返回网址列表

import urllib2, re
def fetch_links(furl,burl,stag,etag):
    '''
    抓取网页新闻
    @param furl 抓取网页地址
    @param burl 网页链接的baseurl,比如凤凰网的链接:<a href="/news/guoji/dir?cid=14&amp;mid=7sdLRL">国际</a>, 根据baseurl可返回<a href="http://i.ifeng.com/news/guoji/dir?cid=14&amp;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]
 

 

你可能感兴趣的:(python,re,urllib2)