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

如何从 URL 中提取文件名以及附加的一些额外数据?

如何从 URL 中提取文件名以及附加的一些额外数据?

心有法竹 2022-06-28 10:49:21
我正在尝试从下载 URL 中提取文件名,该 URL 不仅以文件名本身结尾,而且在文件名 https://some_website.com/folder/file_name.mkv?st=OyvPiQZL8HmbCkapHo-之后附加到 URL 的额外数据tLG&e=1571543844我尝试在 python 中使用 os.path.basename。它包括文件名和额外内容本身,如上面的链接返回文件名.mkv?st=OyvPiQZL8HmbCkapHo-tLg&e=1571543844代替文件名.mkv
查看完整描述

2 回答

?
蝴蝶不菲

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

urld = 'https://ragex.eu/home.html?lol=sdasd'

returned_data = urld[urld.rfind('/') + 1: len(urld)]

print(returned_data) #output : home.html?lol=sdasd

好吧,我不是专家,但这里有一个更简单的方法。


查看完整回答
反对 回复 2022-06-28
?
一只萌萌小番薯

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

也许,


[^/]+(?=\?st)

可能工作正常。


测试

import re

string = ' https://some_website.com/folder/file_name.mkv?st=OyvPiQZL8HmbCkapHo-tLg&e=1571543844'

expression = r'[^/]+(?=\?st)'


print(re.search(expression, string).group(0))

输出

file_name.mkv

如果您想简化/修改/探索表达式,它已在regex101.com的右上角面板中进行了说明。如果您愿意,您还可以在此链接中观看它如何与一些示例输入匹配。


查看完整回答
反对 回复 2022-06-28
  • 2 回答
  • 0 关注
  • 153 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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