2016-06-14 9 views
2

私はBeautifulSoupを初めて使用しています。私は「」タグ内の最後のページ数の値が、私は、このコマンドを使用してタグを取得することができた10 であるかどうかを確認したいdivタグにあるタグを繰り返し処理するには

<div class="jpag" id="srchpagination"><a rel='prev' class="dis"><span>&lsaquo;&lsaquo;</span> Prev</a><span class="act">1</span><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-2' >2</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-3' >3</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-4' >4</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-5' >5</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-6' >6</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-7' >7</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-8' >8</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-9' >9</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-10' >10</a><a rel='next' href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-2'>Next 
<span>&rsaquo;&rsaquo;</span></a></div> 

: は、ここに私が興味のhtmlセグメントです:

atags1=bSoup.find('div' ,attrs={'class' : 'jpag'}) 

今、私はちょうどページ番号を持つ「」タグを反復処理されるようにrel =「prev」やrel =「次」のような属性がありません「」タグを反復処理したいです。それで私を助けてください。 ありがとうございます。

答えて

2

それを行うには、多くの方法がありますが、簡単な方法は、div要素でアンカーを選択し、rel atttributeを持っているいずれかをフィルタリングすることである。

html = """<div class="jpag" id="srchpagination"><a rel='prev' class="dis"><span>&lsaquo;&lsaquo;</span> Prev</a><span class="act">1</span><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-2' >2</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-3' >3</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-4' >4</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-5' >5</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-6' >6</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-7' >7</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-8' >8</a><a href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-9' >9</a><a 
href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-10' >10</a><a rel='next' href='http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-2'>Next 
<span>&rsaquo;&rsaquo;</span></a></div>""" 

from bs4 import BeautifulSoup 

soup = BeautifulSoup(html) 

for a in soup.select("#srchpagination a[href]"): 
    if not a.get("rel"): 
     print(a) 

あなたを与えることになる:

<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-2">2</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-3">3</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-4">4</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-5">5</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-6">6</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-7">7</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-8">8</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-9">9</a> 
<a href="http://www.justdial.com/Bangalore/Carpenters/ct-310711/page-10">10</a> 
+0

どうもありがとう。 1,2、... 10のように、それらの階層にある値を繰り返したい場合は、どうすればよいでしょうか? – joshirohit66

+0

心配しないで、 'a.text'はあなたに各番号を与えます、' a ["href"] 'はあなたにリンクを与えます –

関連する問題