2011-05-30 98 views
1

我正在嘗試使用BeautifulSoup解析HTML頁面,該文件包含文本文件,以.txt擴展名結尾。我想解析HTML,並獲取以.txt結尾的字符串。使用BeautifulSoup獲取匹配擴展名的文件名

所有這樣的字符串是一個<a href>標籤內,這裏是一些例子:

<a href = "foo.txt">

<a href = "bar.txt">

如何獲得foo.txtbar.txt

我這樣做:

>>> links = soup.findAll('a')

但我無法找到如何提取完整的字符串...有什麼建議?

回答

5

BeautifulSoup接受正則表達式作爲參數的形式find()findAll() 這應該工作:

links = soup.findAll(href=re.compile("\.txt$")) 
+0

,我認爲它應該是:'soup.findAll( 'A',HREF = ...' – mouad 2011-05-30 10:06:19

+0

嗯是什麼。 – user225312 2011-05-30 10:07:53

+0

@AA:我的建議實際上是搜索所有具有'href =「*。txt」'的'a'標籤,@vartec解決方案檢查所有的標籤有一個'href =「*。txt」'。 – mouad 2011-05-30 10:19:30