在自动化测试的时候,碰到了一个问题,使用Python调用Windows的 cmd 获取某个域名对应的IP地址后,无法单取出来IP地址的字段。
原本想把nslookup获取的值赋给一个变量,然后取出变量指定的值
例如这样:
str = ’0123456789′
print str[0:3] #截取第一位到第三位的字符
print str[:] #截取字符串的全部字符
print str[6:] #截取第七个字符到结尾
print str[:-3] #截取从头开始到倒数第三个字符之前
print str[2] #截取第三个字符
print str[-1] #截取倒数第一个字符
print str[::-1] #创造一个与原字符串顺序相反的字符串
print str[-3:-1] #截取倒数第三位与倒数第一位之前的字符
print str[-3:] #截取倒数第三位到结尾
print str[:-5:-3] #逆序截取
后来发现不行,以为如果域名对应的IP地址变了,获取的字段位置就可能变了,比如原本获取的是192.168.1.2,然后IP变为192.168.100.100,获取的字段就会少几位。
然后查了一下,发现Python自带的有把域名转换成IP地址的方法,于是记录一下。
代码如下
#-*- coding:utf-8 -*-
import socket
result = socket.getaddrinfo("www.jd.com", None)
print(result[0][4][0])
执行结果:
111.206.231.1