2015-11-06 49 views
1

我用requests在Python中发出请求。Python的计数数字或在刮页上的字母

然后我用bs4来选择想要的div。我现在要算在该div文本的长度,但我把它弄出来的字符串包括所有的标签太多,例如:

<div><a class="some_class">Text here!</a></div> 

我想只能算Text here!,没有所有的diva标签。

任何人都有任何想法我可以做到这一点?

回答

7

你的意思是:

tag.text 

tag.string 

tag意味着你发现使用soup.find()标签。查询the document了解更多详情。


下面是一个简单的演示,可以帮助你了解这是什么意思:

>>> from bs4 import BeautifulSoup 
>>> soup = BeautifulSoup('<html><body><div><a class="some_class">Text here!</a></div></body></html>', "html.parser") 
>>> tag = soup.find('div') 
>>> tag 
<div><a class="some_class">Text here!</a></div> 
>>> tag.string 
'Text here!' 
>>> tag.text 
'Text here!' 
>>> 

关于算文本的长度,你的意思是使用len()这里?

>>> tag.text 
'Text here!' 
>>> len(tag.text) 
10