我试图从网页中提取一个值,但我无法在beautiful soup的find函数中获得确切的值
WP HTML代码的相关部分如下:
<tr class="Celda 1">
<td height="17" width="48%" align="center" class="txt" style="padding: 3px;">21-04-2021</td>
<td width="52%" align="center" class="txt">19.887700</td>
</tr>
我想提取数字19.887700,这个值在这样的网页上每天都在变化。 这是URL with today's date
我当前的Python代码如下:
import requests
from bs4 import BeautifulSoup
from datetime import datetime
def calcular_tipo_cambio(self):
dia = datetime.now().day
mes = datetime.now().month
año = str(datetime.now().year)
if len(str(dia)) == 1:
dia = '0' + str(dia)
if len(str(mes)) == 1:
dia = '0' + str(mes)
url = f'https://www.dof.gob.mx/indicadores_detalle.php?cod_tipo_indicador=158' \
f'&dfecha={dia}%2F{mes}%2F{año}&hfecha={dia}%2F{mes}%2F{año}'
page = requests.get(url)
print(page)
soup = BeautifulSoup(page.content, 'html.parser')
results = soup.find("tr", {"class": "Celda 1"})
print(results)
在我的Python文件中,我使用了一个动态url,因为网页url每天都会根据日期而变化
当我打印(页面)时,我得到<Response [200]>
,这样就可以正确地连接到web页面。然而,当我打印(结果)时,我什么也得不到
关于如何获得期望的结果有什么建议吗
提前多谢
您可以使用此示例了解如何从此页面获取数据:
印刷品:
当我纠正错误时,代码工作
进入
所以这只是变量的一个小错误
顺便说一句:
下次你们可以显示url并复制到浏览器,看看它是否给出了正确的页面
您还可以检查您是否真的期望HTML
或者您可以将其保存在文件中并在web浏览器中打开
相关问题 更多 >
编程相关推荐