2016-11-28 9 views
0

私は「Googleにリンクを」とこのことから、それを印刷つかむことができるようにしたい:検索と印刷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でそれを使用してください:最後のタグがa印刷された場合(タグ内)のデータつまずくその後、aタグに移動して、真のself.anchorを設定します

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 

をし、データ。とにかく、そのラウンドの後、self.anchorは再びfalseになり、複数の誤ったアンカーの検出を防ぎます。