栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用beautifulSoup,Python在h3和div标签中刮取文本

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用beautifulSoup,Python在h3和div标签中刮取文本

您可以使用CSS选择器来查找所需的数据。在您的情况下,

div > h3 ~div
将找到
div
直接在
div
元素内部并由
h3
元素开头的所有元素。

import bs4page= """<div ><div ><div >    <h3>HEADING</h3>    <div><i ></i>&nbsp;&nbsp;NAME</div>    <div><i ></i>&nbsp;&nbsp;MOBILE</div>    <div><i ></i>&nbsp;&nbsp;&nbsp;NUMBER</div>    <div><i ></i>&nbsp;&nbsp;&nbsp;XYZ_ADDRESS</div></div></div></div>"""soup = bs4.BeautifulSoup(page, 'lxml')# find all div elements that are inside a div element# and are proceeded by an h3 elementselector = 'div > h3 ~ div'# find elements that contain the data we wantfound = soup.select(selector)# Extract data from the found elementsdata = [x.text.split(';')[-1].strip() for x in found]for x in data:    print(x)

编辑:刮标题中的文本。

heading = soup.find('h3') heading_data = heading.textprint(heading_data)

编辑:或者,您可以通过使用如下选择器来一次获取标题和其他div元素:

div.col-lg-10 > *
。这将查找
div
属于
col-lg-10
类的元素内的所有元素。

soup = bs4.BeautifulSoup(page, 'lxml')# find all elements inside a div element of class col-lg-10selector = 'div.col-lg-10 > *'# find elements that contain the data we wantfound = soup.select(selector)# Extract data from the found elementsdata = [x.text.split(';')[-1].strip() for x in found]for x in data:    print(x)


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/616239.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号