On Friday, July 11, 2003 at 1:54:47 AM UTC-3, Yun Mao wrote:
> Hi. I did a little homework on google for this question. The answer was:
> >>> import socket
> >>> hostname = socket.gethostname()
> >>> ip = socket.gethostbyname(hostname)
> >>> print ip
> 192.168.55.101
> But what if I have several interfaces, say eth0, eth0:1, eth1, etc. How to
> get all of them? It would be a little undesirable if people suggest to parse
> the result of ifconfig because I in particular want the code to be cross
> platform. Thanks a lot!
>
> Yun
import socket
def get_ipaddr():
proc = subprocess.Popen(["ip addr show | egrep inet | awk '{{print $2}}' |
awk -F'/' '{{print $1}}' | egrep -v '^127' | xargs'"],stdout=subprocess.PIPE,
shell=True)
x = proc.communicate()[0]
return x.strip()
--
https://mail.python.org/mailman/listinfo/python-list