python – 使用HTMLParser从页面中提取绝对链接
发布时间:2020-12-20 11:19:34  所属栏目:Python  来源:网络整理 
            导读:我正在使用以下代码段使用 HTMLParser提取页面上的所有链接.我得到了不少相对网址.如何将这些转换为域的绝对网址,例如www.exmaple.com import htmllib,formatterimport urllib,htmllib,formatterclass LinksExtractor(htmllib.HTMLParser): def __init__(sel
                
                
                
            | 
 我正在使用以下代码段使用 
 HTMLParser提取页面上的所有链接.我得到了不少相对网址.如何将这些转换为域的绝对网址,例如www.exmaple.com 
  
  
  import htmllib,formatter
import urllib,htmllib,formatter
class LinksExtractor(htmllib.HTMLParser):
   def __init__(self,formatter):
      htmllib.HTMLParser.__init__(self,formatter)
      self.links = []
   def start_a(self,attrs):
      if len(attrs) > 0 :
         for attr in attrs :
            if attr[0] == "href":
                self.links.append(attr[1])
   def get_links(self):
      return self.links
format = formatter.NullFormatter()
htmlparser = LinksExtractor(format)
data = urllib.urlopen("http://cis.poly.edu/index.htm")
htmlparser.feed(data.read())
htmlparser.close()
links = htmlparser.get_links()
print links谢谢 解决方法
 你要 
  
  
  urlparse.urljoin(base,url[,allow_fragments]) http://docs.python.org/library/urlparse.html#urlparse.urljoin 这允许您提供绝对或基本URL,并将其与相对URL连接.即使它们有重叠的部分,也应该有效. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
