2016-11-28 28 views
0

我希望能够抓住“链接到谷歌”,并从该打印:定位和打印HTML超链接名称

<a href= "http://www.google.com">link to google</a> 

这种自下而上代码能够抓住的联系,但我不知道如何让它抓住正常的文字。

def handle_starttag(self, tag, attrs): 

      if tag == 'a': 
       self.anchor = True 
       if self.anchor == True: 
        for attr in attrs: 
         if attr[0] == 'href': 
           print(attr[1]) 

回答

0

handle_data使用它:

def handle_starttag(self, tag, attrs): 
    if tag == 'a': 
     self.anchor = True 

def handle_data(self, data): 
    if self.anchor: 
     print('anchor data is:', data) 
    self.anchor = False 

这将进入一个a标签并设置self.anchor真,则在(标签内)数据跌跌如果最后一个标签是a将打印数据。无论如何,在那轮之后,self.anchor将再次为假,防止多次错误检测。