在标记里面的Beautifulsoup文本

时间:2015-04-18 18:44:13

标签: python web-scraping beautifulsoup

我尝试scrape具有以下HTML结构的网页:

<li class="bookie-offer first" data-bookie-code="BB" data-customer-type="existing" data-sport-type="2">

有没有办法从li标签中提取数据?具体来说,我想提取数据 - 客户类型和数据运动类型。

1 个答案:

答案 0 :(得分:0)

来自doc

  

标签可以包含任意数量的属性。标签<b class="boldest">   有一个属性“class”,其值为“boldest”。你可以访问   通过将标记视为字典来处理标记的属性:

     

tag['class']

     

u'boldest'

     

您可以直接以.attrs:

的形式访问该词典      

tag.attrs

     

{u'class': u'boldest'}

在你的情况下......

>>> soup.find(class_='bookie-offer').attrs

{'class': ['bookie-offer', 'first'],
 'data-bookie-code': 'BB',
 'data-customer-type': 'existing',
 'data-sport-type': '2'}

>>> soup.find(class_='bookie-offer').attrs['data-customer-type']
'existing'