我有一个类似的网址
url = 'https://grabagun.com/firearms/handguns/semi-automatic-handguns/glock-19-gen-5-polished-nickel-9mm-4-02-inch-barrel-15-rounds-exclusive.html'
当我使用urlparse()
函数时,得到的结果如下:
>>> url = urlparse(url)
>>> url.path
'/firearms/handguns/semi-automatic-handguns/glock-19-gen-5-polished-nickel-9mm-4-02-inch-barrel-15-rounds-exclusive.html'
有没有可能得到这样的东西:
path1 =“枪支”
path2 =“手枪”
path3 =“半自动手枪”
我不想看到任何以.html结尾的文本。
4条答案
按热度按时间hkmswyz61#
你有一些单一的
/
和一些路径有//
...首先替换所有相同的,如果你想直接应用于网址。对于url.path
,你可以直接这样做输出列表号
第二部分
如果你想让它们成为变量,那么简单地遍历它们并创建变量
输出:
hc2pp10m2#
将为您提供一个列表,每个部分作为一个条目,如果最后一个部分包含.html,则将其排除。
您可以根据自己的需要或用例的具体/通用程度来编辑它。
mrwjdhj33#
您可以将它们全部放入一个数组中,用/分隔它们
如果你想把它们放在path 1,path 2等等,你可以把列表中的值赋给变量。
我只把它放在列表的前3个值上,如果你不想用.html的文本,你总是可以得到最后一个值的索引,并在列表切片中使用它,就像这样。
dgiusagp4#
解决问题的一个简单方法是:
您可以通过以下方式访问这些文件:
我们在这里所做的是,通过执行
path.path[1:]
删除路径的第一个字符串“/”,使用.split("/")
从每次出现的“/”中拆分字符串路径,并检查拆分的字符串是否以“.html”结尾,如果没有,则保存它。