python - 如何查找用户是否输入了主机名或 IP 地址?

标签 python

用户将输入主机名或 IP 地址。如果用户输入 IP 地址,我想保持原样,但如果用户输入主机名,我想使用以下方法将其转换为 IP 地址:

def convert(hostname):
    command = subprocess.Popen(['host', hostname],
                           stdout=subprocess.PIPE).communicate()[0]

    progress1 = re.findall(r'\d+.', command)
    progress1 = ''.join(progress1)
    return progress1 

我该怎么做?

最佳答案

无论输入的是 ip 还是主机名,获取 ip:

ip4 = socket.gethostbyname(ip4_or_hostname)

关于python - 如何查找用户是否输入了主机名或 IP 地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13970028/

相关文章:

python - 将图像重新着色为其他基色并保持渐变

python - For 循环在终端中打印而不是在 Excel 文件中打印

python - 将 unicode 对象传递给 XML 解析器时出现 Unicode 错误

python - 真的很喜欢在 python 上打印

python - 为什么有re.match()?

python - 使用 pandas 重置 CSV 的列位置

python - 解码 SEGD 文件并绘制其中的任何轨迹

python - 如何从nginx + Gunicorn后面的X-Forwarded-For获取第一个客户端ip?

python - Cumsum 每行 pandas 过去 12 个月的列值

python - 使用 Google App Engine 上的 Django 将错误记录到数据库