Python使用主机名,主机名使用IP

use*_*314 0 python sockets string

在python中我需要从主机名获取IP:

socket.gethostbyname('www.python.org') # returns ip good
socket.gethostbyname('http://python.org') # raises error
Run Code Online (Sandbox Code Playgroud)

我需要处理以"http://"开头的主机名,所以我想出了一种方法来重新制作它们:

a = 'http://python.org'
a.replace('http://', 'www.')
print a # Why does it print http://python.org ???
Run Code Online (Sandbox Code Playgroud)

我不确定我做对了.Plz帮助我将这种类型的主机名转换为IP

bru*_*ers 8

你想要urlparse:

>>> import urlparse
>>> urlparse.urlparse('http://python.org')
ParseResult(scheme='http', netloc='python.org', path='', params='', query='', fragment='')
>>> urlparse.urlparse('http://python.org').netloc
'python.org'
>>> 
Run Code Online (Sandbox Code Playgroud)

哦,是的,您不需要在顶级域名前面添加任何"www".