将URL拆分为python中的列表

chi*_*des 2 python urlparse urlsplit

我目前正在开展一个涉及拆分网址的项目.我已经使用urlparse模块来分解url,所以现在我只使用路径段.

问题是,当我尝试split()基于分隔符"/"的字符串来分隔目录时,我最终在列表中找到空字符串.

例如,当我执行以下操作时:

import urlparse
url = "http://example/url/being/used/to/show/problem"
parsed = urlparse.urlparse(url)
path = parsed[2] #this is the path element

pathlist = path.split("/")
Run Code Online (Sandbox Code Playgroud)

我得到了清单:

['', 'url', 'being', 'used', 'to', 'show', 'problem']
Run Code Online (Sandbox Code Playgroud)

我不想要这些空字符串.我意识到我可以通过制作一个没有它们的新列表来删除它们,但这看起来很草率.有没有更好的方法来删除空字符串和斜杠?

S.L*_*ott 5

我不想要这些空字符串.我意识到我可以通过制作一个没有它们的新列表来删除它们,但这看起来很草率.有没有更好的方法来删除空字符串和斜杠?

什么?根据定义,只有一个空字符串,它总是第一个.

pathlist = path.split("/")[1:] 
Run Code Online (Sandbox Code Playgroud)

很常见.


尾部斜杠可以表示"空"文件名.在这种情况下,可能隐含默认名称(例如index.html)

这可能是有意义的.

"http://example/url/being/used/to/show/problem"
Run Code Online (Sandbox Code Playgroud)

文件名是"问题"

"http://example/url/being/used/to/show/problem/"
Run Code Online (Sandbox Code Playgroud)

目录是"问题",空字符串隐含默认文件名.