Dúvida com sintaxe do BeautifulSoup

1. Dúvida com sintaxe do BeautifulSoup

Rodrigo
rmenchio

(usa CentOS)

Enviado em 10/08/2017 - 18:52h

Boa noite, gostaria de extrair o valor do dólar diário a partir de um site usando a técnica de WebScraping, porém não consigo ordenar qual informação será lida pelo python.

Código Python:
import requests

page = requests.get("http://www.dolarhoje.net.br/")
from bs4 import BeautifulSoup
soup = BeautifulSoup(page.content, 'html.parser')
teste = soup.find(id="divSpdInText")
print(teste)


output:
<div id="divSpdInText">
<table>
<thead>
<tr>
<th>Moeda</th>
<th>Valor em real</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Dólar comercial</strong></td>
<td>R$ 3,1754</td>
</tr>
<tr>
<td><strong>Dólar turismo</strong></td>
<td>R$ 3,3100</td>
</tr>
<tr>
<td><strong>Dólar ptax</strong></td>
<td>R$ 3,1543</td>
</tr>
<tr>
<td><strong>Euro comercial</strong></td>
<td>R$ 3,74</td>
</tr>
<tr>
<td><strong>Euro turismo</strong></td>
<td>R$ 3,9000</td>
</tr>
</tbody>
</table>
</div>



Preciso obter o valor 3,31.

Utilizando uma linha a mais no código, desta forma:

Código Python:
import requests

page = requests.get("http://www.dolarhoje.net.br/")
from bs4 import BeautifulSoup
soup = BeautifulSoup(page.content, 'html.parser')
teste = soup.find(id="divSpdInText")
teste2 = teste.td
print(teste2)


output:
<td><strong>Dólar comercial</strong></td>


Ele extrai somente o primeiro <td> que aparece, o que não me satisfaz, pois preciso da linha que consta o valor diário do dólar turismo.

Alguém consegue me ajudar?




  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts