我需要保留链接的某些部分:
Link
www.xxx.co.uk/path1
www.asx_win.com/path2
www.asdfe.aer.com
...
期望输出:
Link2
xxx.co.uk
asx_win.com
asdfe.aer.com
...
我曾经 urlparse
以及 tldextract
但我也有
Netloc
www.xxx.co.uk
www.asx_win.com
www.asdfe.aer.com
...
或
TLDEXTRACT
xxx
asx_win
asdfe.aer
...
通过使用字符串,一些问题可能来自以下方面:
9 https://www.facebook.com/login/?next=https%3A%...
10 https://pt-br.facebook.com/114546123419/pos...
11 https://www.facebook.com/login/?next=https%3A%...
20 http://fsareq.media/?pg=article&id=s...
22 https://www.wq-wq.com/lrq-rqwrq-...
24 https://faseqrq.it/2020/05/28/...
我的尝试是考虑从url解析(netloc)和tldextract(即,结束部分)得到的内容之间的差异。例如,我从netloc得到 www..co.uk
从这里我得到 `` . 这意味着如果我从netloc中减去tldextract www
以及 co.uk
. 我会用公共部分作为分界点,并保留后面的部分(即。, .co.uk
),这就是我要找的。
不同之处在于 df['Link2'] = [a.replace(b, '').strip() for a, b in zip(df['Netloc'], df['TLDEXTRACT'])]
. 这只是因为我需要考虑的结尾部分(后缀)。现在我需要了解如何只考虑结束部分来获得预期的输出。您可以在上面的示例中使用netloc和tldextract列。
2条答案
按热度按时间uelo1irk1#
tldextract.extract()
返回的命名元组(subdomain, domain, suffix)
:所以你可以加入索引
[1:]
:svujldwt2#
首先删除http/https:
然后:
删掉前4个标志(“www.”)
在(/)之后剪切所有内容
您还可以使用https和http编辑所有记录:
以及所有操作之后(删除www和删除http/https-concat正确记录)