我有一个html代码如下:
<div class="_cFb">
<div class="_XWk">Rabindranath Tagore</div>
</div>
我使用以下python代码来提取文本内容:
soup.find_all('div', attrs={'class':'._XWk'})
此代码返回空。但是我能够访问不以下划线(_)开头的其他类atrributes。有任何提取标签文字的想法吗?
答案 0 :(得分:1)
这有效:
>>> import bs4
>>> soup = bs4.BeautifulSoup('''<div class="_cFb">
... <div class="_XWk">Rabindranath Tagore</div>
... </div>''', 'html.parser')
>>> soup.find_all('div', class_='_XWk')
[<div class="_XWk">Rabindranath Tagore</div>]
在这里找到了按类搜索的方式:https://www.crummy.com/software/BeautifulSoup/bs4/doc/#searching-by-css-class
顺便说一句,lxml框架也可用于解析HTML,允许使用CSS选择器进行搜索。
答案 1 :(得分:0)
In [87]: soup.find_all('div', attrs={'class':'_XWk'})
删除.
._XWk