re 正则匹配获取指定路径

本文介绍在无法使用BeautifulSoup或xpath时,如何利用re正则表达式精确匹配并提取网页中的特定数据,通过实例演示了re模块的findall方法的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

re 正则匹配获取指定路径

1、re正则匹配
之前我们有说过Beautiful Soup和xpath两种选择器来获取我们从前端爬下来的指定数据,但是万事都不是绝对的,万一当你发现前面两种选择器都不能匹配到的时候该怎么办呢?
这时候就要用到我们的re正则匹配了,re正则匹配是百分百可以匹配到数据的,只是前两种方便一些。

2、实例

#todo 万事第一步,导包!
import re

#todo 例如要匹配的字段如下
#small_url = '<img src="" attr="53111" data-original="http://imgsrc.baidu.com/forum/wh%3D200%2C90%3B/sign=12e1fa22e8cd7b89e93932813f146e9e/eb10f303918fa0ecce1c9ee5289759ee3f6ddb44.jpg"  bpic="http://imgsrc.baidu.com/forum/w%3D580%3B/sign=ba3f42c80fe9390156028d364bd756e7/48540923dd54564e54be1ed1bdde9c82d0584f7b.jpg" class="threadlist_pic j_m_pic "  />'
#todo 那么我们就可以按如下来匹配,()中的数据是等下你匹配出来后返回出来的数据,比如我们这边要http的内容,那就(http://)就可以了:
ret = '<img src="" attr="\d+?" data-original="http://imgsrc.baidu.com/forum/wh%3D200%2C90%3B/sign=.*?.jpg"  bpic="(http://imgsrc.baidu.com/forum/w%3D580%3B/sign=.*?.jpg)" class="threadlist_pic j_m_pic "  />'
#todo 其中pattern是你的正则表达式,用来写入你的规则,string是你要匹配的字符串
ret_2 = re.findall(pattern=ret,string=small_url)
print(ret_2)

正则匹配是最保险的,就是对于你的技术要求有点,建议用之前可以百度多了解一些正则的相关规则

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值