python脚本获取本机公网ip

1.获取公网IP地址方式,访问:http://txt.go.sohu.com/ip/soip

2.python脚本实现:

 1 #!/usr/bin/python
 2 # -*- coding:utf8 -*-
 3 # By 飞走不可
 4 
 5 import urllib2
 6 
 7 url = urllib2.urlopen("http://txt.go.sohu.com/ip/soip")
 8 text = url.read()
 9 key1 = 'user_ip'
10 key2 = ';'
11 s = text.find(key1)
12 e = text.find(key2,s)
13 IP = text[s:e]
14 print IP

3.群里大神给修改后:

 1 #!/usr/bin/python
 2 # -*- coding:utf8 -*-
 3 
 4 import urllib2
 5 import re
 6 
 7 url = urllib2.urlopen("http://txt.go.sohu.com/ip/soip")
 8 text = url.read()
 9 ip = re.findall(r'\d+.\d+.\d+.\d+',text)
10 
11 print ip[0]

4.另外,shell方式:

 1 echo $(curl -s http://txt.go.sohu.com/ip/soip)| grep -P -o -i "(\d+\.\d+.\d+.\d+)" 

 

在学习python中,感觉找不到头绪,好可怜。。。。

放上大神的blog:http://kinggoo.com/ob-ip.htm

posted @ 2015-10-28 18:57  飞走不可  阅读(10086)  评论(0编辑  收藏  举报