为了账号安全,请及时绑定邮箱和手机立即绑定

通过beautifulsoup获得以下HTML标记内的数字?

通过beautifulsoup获得以下HTML标记内的数字?

守候你守候我 2021-05-06 07:11:59
我可以通过beautifulsoup在以下HTML标签中获取数字吗?<tr align="center" height="15" id="tr_1599656" bgcolor="#ffffff" index="0"></tr><tr align="center" height="15" id="tr_1599657" bgcolor="#ffffff" index="1"></tr><tr align="center" height="15" id="tr_1599644" bgcolor="#ffffff" index="2"></tr>我尝试过的Python代码from bs4 import BeautifulSoupimport rehtml_code = """"<tr align="center" height="15" id="tr_1599656" bgcolor="#ffffff" index="0"></tr><tr align="center" height="15" id="tr_1599657" bgcolor="#ffffff" index="1"></tr><tr align="center" height="15" id="tr_1599644" bgcolor="#ffffff" index="2"></tr>"""soup = BeautifulSoup(html_code,'html.parser')rows = soup.findAll("tr", {"id" : re.compile('tr_*\d')})print rows预期产量159965615996571599644
查看完整描述

2 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

soup=BeautifulSoup('<tr align="center" height="15" id="tr_1599656" bgcolor="#ffffff" index="0"></tr><tr align="center" height="15" id="tr_1599657" bgcolor="#ffffff" index="1"></tr><tr align="center" height="15" id="tr_1599644" bgcolor="#ffffff" index="2"></tr>')


lines=soup.find_all('tr')


for line in lines:print(re.findall('\d+',line['id'])[0])

请下次自行尝试一次。


查看完整回答
反对 回复 2021-05-25
?
噜噜哒

TA贡献1784条经验 获得超7个赞

假设所有id属性都遵循模式tr_XXXXXXX。此代码将适用于它


from bs4 import BeautifulSoup

soup = BeautifulSoup(html_code,'html.parser')

for t in soup.findAll('tr'):

    print(t['id'][3:])

输出

1599656

1599657

1599644


变量html_code包含您在问题中发布的一段html代码




查看完整回答
反对 回复 2021-05-25
  • 2 回答
  • 0 关注
  • 219 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号