Python 27 - BeautifulSoup and Tables



我有这个来源:

<tr id="bitstampUSD">
<td class="arrow" change="up" latest_trade="1363480722">
  <span class="down">▼</span>
</td>
<td class="symbol">
    <nobr>
    <a href="/markets/bitstampUSD.html">bitstampUSD</a>
    </nobr>
    <span class="sub">USD (SEPA converted)</span>
</td>
<td>46.74
    <span class="sub">41 min ago</span>
</td>
<td class="minichart break">
  <span volume="**whole heaps of number here that I want**"
  print="**more numbers I want**"
  avg="**more numbers I want**"
  class="marketsparkline"></span>
</td>
<td>**36.39**
  <span class="sub change">**10.35 28.46%**</span>
</td>
<td>**141,043.10**
    <span class="sub">**5,132,052.22 USD**</span>
</td>
<td>**25.25**
    <span class="sub">**46.58** (24h)</span>
</td>
<td>**49.17**
    <span class="sub">47 (24h)</span>
</td>
<td class="break">**46.7**</td>
<td>**46.74**</td>
<td class="break">**46.78**
  <span class="sub change">-0.04 -0.09%</span>
</td>
<td>**819.54**
    <span class="sub">**38,340.96** USD</span>
</td>
      </tr>

我想用粗体显示数据。(嗯,它应该是粗体的,我猜代码标签阻止了这种情况的发生。两个星号内的数据

我设法弄清楚如何在代码中获得我没有包括在这里的位,因为它在类中。但是在这里,有些是课外的,所以我不知道如何获取。

查看整个源代码可能会有所帮助,如果您想要http://bitcoincharts.com/markets/它的布局与我以前见过的其他表代码不同。

好吧,这输出比您要求的要多一点,但应该可以让您开始:

soup = BeautifulSoup(f)
for td in soup.find_all('td', class_='minichart break'):
    avg = td.span['avg']
    print_ = td.span['print']
    volume = td.span['volume']
    print avg, print_, volume
for td in soup.find_all('td'):
    print 'TD', td.text.split()

根据你的例子,我得到:

**more numbers I want** **more numbers I want** **whole heaps of number here that I want**                                                                                                                                                                                         
[u'u25bc']                                                                                                                                                                                                                                                                        
[u'bitstampUSD', u'USD', u'(SEPA', u'converted)']                                                                                                                                                                                                                                  
[u'46.74', u'41', u'min', u'ago']                                                                                                                                                                                                                                                  
[]                                                                                                                                                                                                                                                                                 
[u'**36.39**', u'**10.35', u'28.46%**']                                                                                                                                                                                                                                            
[u'**141,043.10**', u'**5,132,052.22', u'USD**']                                                                                                                                                                                                                                   
[u'**25.25**', u'**46.58**', u'(24h)']                                                                                                                                                                                                                                             
[u'**49.17**', u'47', u'(24h)']                                                                                                                                                                                                                                                    
[u'**46.7**']                                                                                                                                                                                                                                                                      
[u'**46.74**']                                                                                                                                                                                                                                                                     
[u'**46.78**', u'-0.04', u'-0.09%']                                                                                                                                                                                                                                                
[u'**819.54**', u'**38,340.96**', u'USD']

最新更新