Python实战:使用re正则库匹配url中的id信息

简介: Python实战:使用re正则库匹配url中的id信息

需求

url 中有一个id信息,需要从url中匹配出来

匹配示例如下

# -*- coding: utf-8 -*-
import re
url = 'https://www.demo.com/goods/item/id/12562.html'
ret = re.match('.*/goods/item/id/(\d+)\.html', url)
print(ret.group(1))
# 12562

代码优化

我们单独给这个功能写一个函数,以便代码复用,不仅代码复用,同时也能增强代码美观

# -*- coding: utf-8 -*-
import re
def get_url_id(url):
    ret = re.match('.*/goods/item/id/(\d+)\.html', url)
    if ret:
        return ret.group(1)
if __name__ == '__main__':
    url = 'https://www.baidu.com/goods/item/id/12562.html'
    url_id = get_url_id(url)
    print(url_id)
    # 12562

命名组

使用正则命名组,能更优雅的处理匹配结果

# -*- coding: utf-8 -*-
import re
def get_url_id(url):
    ret = re.match('.*/goods/item/id/(?P<uid>\d+)\.html', url)
    if ret:
        #  {'uid': '12562'}
        return ret.groupdict().get('uid')
if __name__ == '__main__':
    url = 'https://www.demo.com/goods/item/id/12562.html'
    print(get_url_id(url))
    # 12562


相关文章
|
23小时前
|
运维 知识图谱 Python
专为运维工程师设计!阿里藏经阁出品的Python实战手册被我搞来了
Python 可能是极少数既简单又强大的编程语言中的一种。更重要的是,用它来编程是非常快乐的事。 今天给小伙伴们分享的是阿里“藏经阁”出品的专门给运维工程师设计的Python实战手册
|
1天前
|
监控 Python
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
paramiko 模块 ---Python脚本监控当前系统的CPU、内存、根目录、IP地址等信息
|
5天前
|
数据采集 JSON 数据可视化
【Python实战】Python对中国500强排行榜数据进行可视化分析
【Python实战】Python对中国500强排行榜数据进行可视化分析
|
1天前
|
数据采集 Python
揭秘淘宝商品信息:Python爬虫技术入门与实战指南
Python爬虫用于获取淘宝商品详情,依赖`requests`和`beautifulsoup4`库。安装这两个库后,定义函数`get_taobao_product_details`,发送GET请求模拟浏览器,解析HTML获取标题和价格。注意选择器需随页面结构更新,遵守爬虫政策,控制请求频率,处理异常,且数据只能用于合法目的。
|
3天前
|
Java UED Python
Python多线程编程实战技巧与性能优化策略
Python多线程编程实战技巧与性能优化策略
|
5天前
|
数据采集 XML 存储
【Python实战】Python多线程批量采集图片
【Python实战】Python多线程批量采集图片
|
5天前
|
数据采集 XML 存储
【Python实战】Python采集二手车数据——超详细讲解
【Python实战】Python采集二手车数据——超详细讲解
|
5天前
|
消息中间件 缓存 中间件
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
【赠书活动 - 第1期】- 测试工程师Python开发实战(异步图书出品)| 文末送书
|
2天前
|
JavaScript 前端开发 数据格式
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
URL编码【详解】——Javascript对URL进行编码解码的三种方式的区别和使用场景,axios请求拦截器中对get请求的参数全部进行URL编码
6 0
|
2天前
|
JavaScript
js 获取并解析 url 中参数的三种方法
js 获取并解析 url 中参数的三种方法
6 0