1

私はこのコードを持っています

<a title="Next Page - Results 1 to 60 " href="bla bla" class="smallfont" rel="next">&gt;</a>

a要素を取得して href を取得したい。

title属性をどのように一致させることができますかNext Page

a要素の title 属性のテキストを部分的に一致させたい。

aページには似たようなタグがたくさんありますが、違いは、title属性に が含まれている"Next Pageか、テキストに が含まれていることだけです>

4

1 に答える 1

2

必要なことを達成するには、正規表現を使用する必要があります。

最初にマークアップ全体を文字列として取得し、それを使用してBeautifulSoupオブジェクトを作成します。

次に、オブジェクトの.findAllメソッドを次のように使用しますBeautifulSoup

import BeautifulSoup
import re

soup = BeautifulSoup('<a title="Next Page - Results 1 to 60 " href="bla bla" class="smallfont" rel="next">&gt;</a>')

elements = soup.findAll('a', {'title':re.compile('Next Page.')}) 
# get all 'a' elements with 'title' attribute as 'Next Page something' into a list

for e in elements:
    if str(e.string) == '>' or e.string == '&gt;': # check if string inside 'a' tag is '>'
        print e['href']
于 2012-12-28T04:24:54.540 に答える