如何从python中的文本文件获取基础url?

问题描述:

我有一个文本文件名WEBURL其中有很多网址,我想用正则表达式 weburls只得到基本网址如何从python中的文本文件获取基础url?

wikimapia.org/1649944/Bahawalpur-Railway-Station 
panoramio.com/photo/84118355 
wikimapia.org/1649944/Bahawalpur-Railway-Station 
nativepakistan.com/photos-of-bahawalpur 
defence.pk/threads/pictures-of-pakistan-railways.303027 
nativepakistan.com/photos-of-bahawalpur 
panoramio.com/photo/51311162 
https://hiveminer.com/User/Pakistan Rail Buff 

需要这个

wikimapia.org 
panoramio.com 
wikimapia.org 
nativepakistan.com 
defence.pk 
nativepakistan.com 
panoramio.com 
https://hiveminer.com 

使用正则表达式我该怎么办它?

+0

这似乎是主观你分类为一个基本URL – akkatracker

+0

跟随在akkatracker的观点,我会认为'defence.pk'是一个baseurl但'defence.pk/threads'不是。你确定你要找的规则是“基础网址”吗? –

+0

已编辑帖子。请检查 –

一种解决方案可以是:

^(?:\w+://)?.*?(?::\d+)?(?=/|$) 

它匹配接着任选的协议规范,例如线(^)的begining https://(?:\w+://)?)。然后它匹配任何数量的任何东西.*?)直到一个可选的端口规范 - 如:80(?::\d+)?)。最后它检查匹配后面是/行尾$(psitive向前看(?=/|$))。

Check it out here at regex101

请注意,如果您不想匹配端口部分,则可以将其移至正面。即^(?:\w+://)?.*?(?=(?::\d+)?(?:/|$))