2012-07-23 85 views
6

有人可以指导我如何使用BeautifulSoup拉标签的价值?我阅读了文档,但很难浏览它。例如,如果我有:使用BeautifulSoup拉标签值

<span title="Funstuff" class="thisClass">Fun Text</span> 

我该如何拉“Funstuff”busing BeautifulSoup/Python?

编辑:我使用的3.2.1版本

+0

这是BeautifulSoup 3还是BeautifulSoup 4? – 2012-07-23 18:40:22

+0

其3.2.1 ..10char – user1463925 2012-07-23 18:41:43

回答

6

你需要有东西来识别你正在寻找的元素,这是很难分辨它是什么,在这个问题上。

例如,这两个都会在BeautifulSoup 3中打印出Funstuff。一个查找span元素并获得标题,另一个查找给定类的跨度。许多其他有效的方法可以达到这一点。

import BeautifulSoup 
soup = BeautifulSoup.BeautifulSoup('<html><body><span title="Funstuff" class="thisClass">Fun Text</span></body></html>') 
print soup.html.body.span['title'] 
print soup.find('span', {"class": "thisClass"})['title'] 
+0

问:我对BeautifulSoup import语句是: 从BeautifulSoup进口BeautifulSoup,CData的 然而,上面的代码似乎只有在工作的时候: 进口BeautifulSoup 任何想法,为什么? – user1463925 2012-07-23 19:29:39

+0

这只是Python。如果你正在进行相对导入('从BeautifulSoup导入BeautifulSoup'),则将该行从'soup = BeautifulSoup.BeautifulSoup(...'更改为'soup = BeautifulSoup(...' 请参见http:// docs。有关更多信息,请参阅python.org/tutorial/modules.html。 – 2012-07-23 20:10:20