2017-01-23 54 views
0

對不起,最有可能以前被問過,但我似乎無法找到堆棧/從搜索引擎的答案。在表格中獲取href

我試圖從表中抓取一些數據,但有我需要得到的href鏈接。 HTML如下:

<table class="featprop results"> 
<tr> 
**1)**<td class="propname" colspan="2"><a href="/lettings-search-results?task=View&amp;itemid=136" rel="nofollow"> West Drayton</a></td> 
</tr> 
<tr><td class="propimg" colspan="2"> 

    <div class="imgcrop"> 
    **2)**<a href="/lettings-search-results?task=View&amp;itemid=136" rel="nofollow"><img src="content/images/1/1/641/w296/858.jpg" alt=" Ashford" width="148"/></a> 


    <div class="let">&nbsp;</div> 
    </div> 
</td></tr> 

<tr><td class="proprooms"> 

到目前爲止,我已經使用了以下內容:

for table in soup.findAll('table', {'class': 'featprop results'}): 
    for tr in table.findAll('tr'): 
     for a in tr.findAll('a'): 
      print(a) 

其中在上面的html同時返回1和2,任何人都可以幫我去掉只是HREF鏈接?

+1

什麼'一[ 'HREF']'? –

回答

1
for table in soup.findAll('table', {'class': 'featprop results'}): 
    for tr in table.findAll('tr'): 
     for a in tr.findAll('a'): 
      print(a['href']) 

出來:

/lettings-search-results?task=View&itemid=136 
/lettings-search-results?task=View&itemid=136 

Attributes

編輯:

links = set() # set will remove the dupilcate 
for a in tr.findAll('a', href=re.compile(r'^/lettings-search-results?')): 
    links.add(a['href']) 

regular expression

+0

謝謝!雖然這有效,但我找到了一些我不想要的鏈接,是否可以只返回以'/ lettings-search-results?'開頭的鏈接? – Maverick

+0

這工作,但返回每個鏈接3。所以我需要去除重複項目。謝謝! – Maverick

+1

@Maverick將所有鏈接放在一個集合()中,這將刪除重複。 –

1

此爲您提供的標籤ELEM下一個數組選定的類名稱。

result = soup.select(".featprop a"); 
for a in result: 
    print(a['href']) 

給你如下的結果:

/lettings-search-results?task=View&itemid=136 
/lettings-search-results?task=View&itemid=136