如何获取URL中最后一个斜杠后的所有内容?

166

我该如何在Python中提取URL中最后一个斜杆之后的内容?例如,这些URL应返回以下内容:

URL: http://www.test.com/TEST1
returns: TEST1

URL: http://www.test.com/page/TEST2
returns: TEST2

URL: http://www.test.com/page/page/12345
returns: 12345

我尝试使用urlparse,但这给了我完整的路径文件名,比如page/page/12345


2
如果URL可能包含查询字符串,例如...?foo=bar,而你不想要这个,我建议使用urlparse与Naeg的basename建议相结合。 - plundra
http://docs.python.org/library/urlparse.html#module-urlparse - Rusty Rob
URL可以以斜杠结尾。如果您需要http://www.test.com/TEST1/返回TEST1,那么所有这些答案都不适用于您。 - user3064538
我有点失望,没有人在他们的示例中使用这个问题的URL :~( - Josie Thompson
@Boris:不再了-自从你的回答(现在也包括我的)。;-) - lcnittl
15个回答

0
extracted_url = url[url.rfind("/")+1:];

0
如果你只想获取路径,而不是查询参数或哈希:
new URL(document.URL).pathname.split('/').reverse()[0];

0

将URL拆分并弹出最后一个元素 url.split('/').pop()


0

将URL拆分并弹出最后一个元素

const plants = ['broccoli', 'cauliflower', 'cabbage', 'kale', 'tomato'];

console.log(plants.pop());
// expected output: "tomato"

console.log(plants);
// expected output: Array ["broccoli", "cauliflower", "cabbage", "kale"]


-5
url ='http://www.test.com/page/TEST2'.split('/')[4]
print url

输出: TEST2

2
你真的应该将“-1”作为索引传递,否则这只适用于具有完全相同数量“/”的字符串。 - Chris_Rands

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接