如何从Python中的给定URL中提取主机名?

时间:2012-11-26 15:43:18

标签: python

如何从hostname:/file_name中提取主机名?例如,在ngs.pradhi.com:/upload中,我想从中提取ngs.pradhi.com并通过ssh.connect进行测试。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

示例中的字符串不是URL,因此您将无法使用标准URL模块(urlparse)来解析它。以下是您可以手动完成的方法:

In [43]: path = 'ngs.pradhi.com:/upload'

In [44]: path.split(':')[0]
Out[44]: 'ngs.pradhi.com'

对于SSH,请查看paramiko

答案 1 :(得分:1)

您应该考虑使用urlparse模块:

  

此模块定义了一个标准接口,用于在组件中解析统一资源定位符(URL)字符串(寻址方案,网络位置,路径等),将组件组合回URL字符串,以及转换“相对URL” “给定一个”基本URL“的绝对URL。

示例:

>>> import urlparse
>>> urlparse.urlparse('http://ngs.pradhi.com/upload')
ParseResult(scheme='http', netloc='ngs.pradhi.com', path='/upload', params='', query='', fragment='')