获得外网IP,请教有无更好的方法?

获得外网IP,请教有无更好的方法?

想得到本机的IP确切方位,想到下面方法,还有没有更好的?

date=urllib.urlopen(http://www.ip138.com/ips.asp).readlines()
for IP in date:
...         if "您的IP地址是" in i:
            print ip
自己的网站上放个网页,效果更好.内容就是远程IP而已.还节约流量.
import socket
localip = socket.gethostbyname(socket.gethostname())
print localip
D:\Python25>ip.py
192.168.1.5

我的机子怎么只能得到内网IP
#!/usr/bin/env python
#coding=utf-8
import socket
import re


def getip():
    names,aliases,ips = socket.gethostbyname_ex(socket.gethostname())
    for ip in ips :
        if not re.match('^192',ip):
            print ip

if __name__ == '__main__':
    getip()

楼上程序试了一下,也是获取本机ip啊
我试了。。可以得到公网IP。
我是内网通过代理出去的,用了5楼的程序,我得到的仍就是本机ip。不知道是不是因为代理的问题。。。迷惑。。
我那个是取本机外网IP的,你的机器就没有外网IP啊,用你那个方法可以得到代理的IP
偶试了,偶的机器可以得到自己的外网IP。。。感谢。。收藏。。