仓酷云
标题:
来一发Python猎取当地的IP和地点地
[打印本页]
作者:
谁可相欹
时间:
2015-1-14 20:41
标题:
来一发Python猎取当地的IP和地点地
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!
媒介:
明天有人问我说如何摹拟外洋用户扫瞄网站,实在就是摹拟IP。我说用代办署理是能够简单完成的。但凡碰到国际互联网做国际化时,大概都必要做到如许的测试,看看外洋同胞会见我们网站是甚么模样。想昔时在阿里巴巴国际网站时,我们也是必要摹拟如许的,不外事先我对这个需求不强,以是也没决心往完成。用个SSH代办署理啥的,扫瞄器设置一下,是能够好做的,记得之前写过一篇文章,见:无偿使用AmazonEC2完成更畅达的互联网会见
注释:因为媒介中的故事,我溘然想看看网上有无猎取客户端IP和依据IP失掉详细的IP地点地的API,固然简单找到的,不然那末多小网站都写着“接待来自上海电信的笑遍天下”,这么简单完成的。以是用Python做了复杂的小步伐。我利用了腾讯的API来取得IP,利用网易有道的API来取得IP地点地。(由于感到上腾讯的IP库对照壮大,也发明网易有道的IP地点地信息对照具体,以是取两者的优点实行了一下)我的Python小步伐前往了局为:
youripis:124.78.242.245
youarehere:上海市黄浦区电信
腾讯,网易,新浪,搜狐都供应了IP地点转换为实践地点的接口.分离这些流派网站api接口你就能够找到扫瞄者正确地点了。
上面是几个流派网站的IP查询地点和API接口。
腾讯:http://fw.qq.com/ipaddress前往格局为javascript格局工具.形如:varIPData=newArray(“124.204.70.160″,””,”北京市”,””);
能够在页面中引进js文件间接挪用。
<scriptlangge=”javascript”type=”text/javascript”src=”http://fw.qq.com/ipaddress”charset=”gb2312″></script>
<script>document.write(“你的IP是:”+IPData[0]+”,来自:”+IPData[2]);</script>
搜狐:http://pv.sohu.com/cityjson也是扫瞄器js挪用的。前往varreturnCitySN={“cip”:“124.204.70.160″,“cid”:“110000″,“cname”:“北京市”};的格局。
新浪的IP地点查询接口:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js
前往varremote_ip_info={“ret”:1,”start”:”124.205.0.0″,”end”:”124.205.136.255″,”country”:”中国”,”province”:”北京”,”city”:”北京”,”district”:””,”isp”:”电信通”,”type”:””,”desc”:””};
新浪多地区测试***:http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=124.204.70.160
网易有道IP地点查询:http://www.yo?o.com/smartresult-xml/search.s?type=ip&q=124.204.70.160
上面是猎取IP和IP地点地的Python小步伐(合用于Python3版本)。
次要的注重点有两点:
1.要对API挪用的前往工具依据encoding来做decode;
2.就是正则表达式了,哎,再次碰到,发明它真的很好很壮大啊。
#!/usr/bin/python3
#-*-coding:utf-8-*-
”’
Createdon2011-8-15
@author:JayRen笑遍天下
”’
importre
importurllib.reqst
defget_reponse_from_url(url):
req=urllib.reqst.Reqst(url)
encoding=‘gbk’
try:
doc=urllib.reqst.urlopen(req).read()
#print(doc.decode(encoding))
returndoc.decode(encoding)
exceptExceptionase:
print(“urlopenException:%s”%e)
defget_ip_and_location():
url_ip_qq=“http://fw.qq.com/ipaddress”
url_location_yo?o=“http://www.yo?o.com/smartresult-xml/search.s?type=ip&q=”
re_ip=“((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))”
str_ip=get_reponse_from_url(url_ip_qq)
ip=re.search(re_ip,str_ip).group(1)
#print(“ip=”+ip.group(1))
print(“youripis:”+ip)
url_location_yo?o+=ip
str_location=get_reponse_from_url(url_location_yo?o)
re_location=‘<location>(.*)</location>’
location=re.search(re_location,str_location).group(1)
print(“youarehere:”+location)
if__name__==‘__main__’:
get_ip_and_location()
参考材料:http://www.oophper.com/html/particle/partpage_49.php
欢迎大家来到仓酷云论坛!
作者:
admin
时间:
2015-1-16 21:32
标题:
来一发Python猎取当地的IP和地点地
下面看看一个让人无法回答的问题:“救命各位高手,向你们请教一些问题:如何在Linux下配制HTTP、FTP、Samba、DNS、DHCP、Sendmail服务器,谢谢”这样的问题。
作者:
精灵巫婆
时间:
2015-1-16 21:32
标题:
来一发Python猎取当地的IP和地点地
Linux最大的特点就是其开源性,这一点是十分难得的,这也是它能够存在到现在的原因之一。
作者:
只想知道
时间:
2015-1-21 23:58
应对Linux的发展历史和特点有所了解,Linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具。
作者:
小女巫
时间:
2015-1-30 23:09
应对Linux的发展历史和特点有所了解,Linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具。
作者:
第二个灵魂
时间:
2015-2-6 17:08
熟读Linux系统有关知识,如系统目录树,有关内容可购书阅读或搜索论坛。
作者:
不帅
时间:
2015-2-17 18:47
熟悉并掌握安装Linux,安装是学习的前提。目前较常见的安装方法有二种:
作者:
愤怒的大鸟
时间:
2015-3-5 22:27
为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。
作者:
变相怪杰
时间:
2015-3-12 16:36
就这样,我们一边上OS理论课,一边上这个实验,这样挺互补的,老师讲课,一步一步地布置任务
作者:
因胸联盟
时间:
2015-3-12 16:36
一定要学好命令,shell是命令语言,命令解释程序及程序设计语言的统称,shell也负责用户和操作系统之间的沟通。
作者:
海妖
时间:
2015-3-20 00:48
可以说自己收获很大,基本上完成了老师布置的任务,对于拔高的题目没有去做,因为我了解我的水平,没有时间和精力去做。?
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2