将网站网址拆分为关键字,多重拆分

时间:2020-06-04 23:26:45

标签: python

因此,我目前正在创建一个工具,该工具可扫描网站的网址并以列表形式返回关键字。例如google.com/images,然后该工具应给出: {“谷歌图片”} 我知道如何将.com部分过滤掉,但是我遇到的问题是我无法再次拆分已拆分的部分。所以我最终得到了第一次分裂的结果。我如何再次分割这些部分?

第一个run split(".") -> {"google", "com/images"}

第二run split("/") -> {"google", "com", "images"}

因为那样我就可以过滤掉.com部分之类的东西。我是用Python编写的,这是我的代码atm。

首先出现错误:“ AttributeError:'list'对象没有属性'split'“,所以问题在于这是一个列表对象,我无法再次拆分。

现在输入代码

url_content = input('Enter url: ')

url_split1 = url_content.split('.')

url_split2 = url_split1.split('/')

url_split3 = url_split2.split('-')

url_split4 = url_split3.split('&')

filtered = {'com', 'net'}

print(url_split4)

for key in url_split4:

    if key not in filtered:

        print(key)

2 个答案:

答案 0 :(得分:1)

您可以使用replace:

url_content = input('Enter url: ').replace('/','.').replace('-','.').replace('&','.')

然后将其拆分一次:

url_split1 = url_content.split('.')

答案 1 :(得分:1)

您可以按以下方式使用python的内置正则表达式库。

import re
re.split('\.|\&|\-|/', url_content)

,或者您可以使用字符串替换方法。

url_content.replace(".", "/").replace("&", "/").replace("-", "/").split("/")
相关问题