2024-04-20 11:27:50 发布
网友
我一直在尝试从url列表中提取域名,这样http://supremecosts.com/contact-us/就会变成http://supremecosts.com。我试图找到一个干净的方式来做它,将适应各种gtld和cctld。你知道吗
http://supremecosts.com/contact-us/
http://supremecosts.com
假设您正在使用python3并且不想将regex用于作业
python3
regex
>>> from urllib.parse import urlparse >>> url = "http://supremecosts.com/contact-us/" >>> obj = urlparse(url) >>> obj ParseResult(scheme='http', netloc='supremecosts.com', path='/contact-us/', params='', query='', fragment='') >>> obj.geturl() 'http://supremecosts.com/contact-us/' >>> obj.netloc 'supremecosts.com'
可能一个愚蠢但有效的方法是: 将URL保存为字符串,然后从后向前扫描。一旦你遇到一个句号,把前面3个空格的所有东西都扔掉。我相信网址在域名后面没有句号。如果我错了,请纠正我。你知道吗
您可以使用regex这样做:
import re text = 'http://supremecosts.com/contact-us/' m = re.search('(https?:\/\/[^:\/\n]+)', text) if m: print(m.group(1))
工作example
假设您正在使用
python3
并且不想将regex
用于作业可能一个愚蠢但有效的方法是:
将URL保存为字符串,然后从后向前扫描。一旦你遇到一个句号,把前面3个空格的所有东西都扔掉。我相信网址在域名后面没有句号。如果我错了,请纠正我。你知道吗
您可以使用regex这样做:
工作example
相关问题 更多 >
编程相关推荐