Python实战:通过内置函数urljoin优雅的实现url链接的拼接

需求:

在一个页面中,有很多图片地址

不过,图片url是一个绝对路径地址,不带域名

我希望得到带域名的完整图片地址,这样存入数据库之后能够正常打开图片

# 当前页面地址
'https://www.demo.com/list/1'

# 图片地址
'/uploads/20211020/edb0ce29ecbe7865da2a7b904ffd85da.jpg'

# 完整图片地址
'https://www.demo.com/uploads/20211020/edb0ce29ecbe7865da2a7b904ffd85da.jpg'

第一感觉是直接拼接字符串实现

'https://www.demo.com' + '/uploads/20211020/edb0ce29ecbe7865da2a7b904ffd85da.jpg'

如果当前页面变了呢?而且这样写会出现一个硬编码的字符串,看着很不舒服

其实,我们可以通过内置函数urljoin 优雅的实现url的拼接

Python3 示例

# -*- coding: utf-8 -*-

from urllib.parse import urljoin

current_url = 'https://www.demo.com/list/1'

url = '/uploads/20211020/edb0ce29ecbe7865da2a7b904ffd85da.jpg'

full_url = urljoin(current_url, url)

print(full_url)
# https://www.demo.com/uploads/20211020/edb0ce29ecbe7865da2a7b904ffd85da.jpg

猜你喜欢

转载自blog.csdn.net/mouday/article/details/127366065