使用 Python ping 网站时必须指定 IP 地址
IP address must be specified when pinging a website with Python
所以我尝试 ping Microsoft 或 Google 等网站并打印出结果,但是当我 运行 脚本时,它只是说:"IP address must be specified."。我试着环顾四周看看为什么会这样,但似乎无法缩小解决方案的范围。
这是我的代码:
import subprocess
print('Ping www.microsoft.com')
print()
address = 'www.microsoft.com'
subprocess.call(['ping', '-c 3', address])
我是不是做错了什么?如果是这样,将不胜感激任何帮助或解释!
要显示子进程调用的输出,您可以使用 check_output
方法:See this answer for details
import subprocess
def ping():
print('Ping www.microsoft.com')
print()
address = 'www.microsoft.com'
print(subprocess.check_output(['ping', '-c', '3', address]).decode())
ping()
输出:
Ping www.microsoft.com
PING e13678.dspb.akamaiedge.net (23.53.160.151) 56(84) bytes of data.
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=1 ttl=55 time=83.6 ms
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=2 ttl=55 time=83.5 ms
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=3 ttl=55 time=83.7 ms
--- e13678.dspb.akamaiedge.net ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 83.567/83.648/83.732/0.067 ms
所以我尝试 ping Microsoft 或 Google 等网站并打印出结果,但是当我 运行 脚本时,它只是说:"IP address must be specified."。我试着环顾四周看看为什么会这样,但似乎无法缩小解决方案的范围。
这是我的代码:
import subprocess
print('Ping www.microsoft.com')
print()
address = 'www.microsoft.com'
subprocess.call(['ping', '-c 3', address])
我是不是做错了什么?如果是这样,将不胜感激任何帮助或解释!
要显示子进程调用的输出,您可以使用 check_output
方法:See this answer for details
import subprocess
def ping():
print('Ping www.microsoft.com')
print()
address = 'www.microsoft.com'
print(subprocess.check_output(['ping', '-c', '3', address]).decode())
ping()
输出:
Ping www.microsoft.com
PING e13678.dspb.akamaiedge.net (23.53.160.151) 56(84) bytes of data.
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=1 ttl=55 time=83.6 ms
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=2 ttl=55 time=83.5 ms
64 bytes from a23-53-160-151.deploy.static.akamaitechnologies.com (23.53.160.151): icmp_seq=3 ttl=55 time=83.7 ms
--- e13678.dspb.akamaiedge.net ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 83.567/83.648/83.732/0.067 ms