如何从URL中删除片段标识符?

时间:2011-06-06 09:31:13

标签: python string

我有一个包含链接的字符串。链接通常具有以下形式:

http://www.address.com/something#something

python中是否有一个可以从链接中删除“#something”的函数?

5 个答案:

答案 0 :(得分:35)

对于Python 2,使用urlparse.urldefrag

>>> urlparse.urldefrag("http://www.address.com/something#something")
('http://www.address.com/something', 'something')

答案 1 :(得分:11)

只需使用split()

即可
>>> foo = "http://www.address.com/something#something"
>>> foo = foo.split('#')[0]
>>> foo
'http://www.address.com/something'
>>>

答案 2 :(得分:3)

在python 3中,urldefrag函数现在是urllib.parse的一部分:

from urllib.parse import urldefrag
unfragmented = urldefrag("http://www.address.com/something#something")

('http://www.address.com/something', 'something')

答案 3 :(得分:1)

试试这个:

>>> s="http://www.address.com/something#something"
>>> s1=s.split("#")[0]
>>> s1
'http://www.address.com/something'

答案 4 :(得分:0)

您可以像这样分配不需要的部分

fixed, throwaway = urldefrag(url)

其中url是碎片地址。这比分裂好一点。我没有检查它是否更快或更高效。