python 中的 DNS 地址和 return IP 地址的 Ping 列表
Ping list of DNS address and return IP address in python
提供存储在 .csv 工作簿中的 DNS 列表,如何遍历这些 DNS 的列表 ping 它们然后打印 IP 地址列表?以下代码无法正常工作。
import csv
with open('masterlist.csv', 'r') as f:
reader = csv.reader(f)
your_list = list(reader)
response = os.system("ping -c 1 " + your_list)
print(your_list)
假设文件 masterlist.csv
的内容如下所示:
google.com
whosebug.com
这适用于 Windows。子进程库是 os.system 的超集,您应该改用它。
from subprocess import check_output
def get_ip(domain):
# quick and dirty way of retrieving the ip address,
# better use regular expression
response = check_output(['ping', '-n', '1', domain]).split()[2]
return response.decode('utf8')
with open('masterlist.csv', 'r') as f:
ip_addresses = {domain: get_ip(domain) for domain in f.read().splitlines()}
print(ip_addresses)
提供存储在 .csv 工作簿中的 DNS 列表,如何遍历这些 DNS 的列表 ping 它们然后打印 IP 地址列表?以下代码无法正常工作。
import csv
with open('masterlist.csv', 'r') as f:
reader = csv.reader(f)
your_list = list(reader)
response = os.system("ping -c 1 " + your_list)
print(your_list)
假设文件 masterlist.csv
的内容如下所示:
google.com
whosebug.com
这适用于 Windows。子进程库是 os.system 的超集,您应该改用它。
from subprocess import check_output
def get_ip(domain):
# quick and dirty way of retrieving the ip address,
# better use regular expression
response = check_output(['ping', '-n', '1', domain]).split()[2]
return response.decode('utf8')
with open('masterlist.csv', 'r') as f:
ip_addresses = {domain: get_ip(domain) for domain in f.read().splitlines()}
print(ip_addresses)