基于python实现查询ip地址来源


Posted in Python onJune 02, 2020

从http://freeapi.ipip.net和http://ip-api.com/json/这两个网站提供的免费调用接口查询IP地址归属地。

接口调用方法是在url后面直接加上IP地址。

url = 'http://freeapi.ipip.net/218.192.3.42' #中文免费
url2 = 'http://ip-api.com/json/218.192.3.42' #外国网站

ip.py:

import sys
import requests

def main(argv):

  url = 'http://freeapi.ipip.net/'  #中文免费
  url2 = 'http://ip-api.com/json/'  #外国网站
  args = sys.argv[1]
  url=url+format(args)
  url2 = url2 + format(args)
  response = requests.get(url)
  response2 = requests.get(url2)

  str=response.text.replace('\"','') #去掉双引号
  str=str.replace('[','')      #去掉方括号
  str=str.replace(']','')
  str=str.replace(' ','')

  str=str.split(",")  #已逗号为分割符号,分割字符串为数组
  print("****************************************")
  print("您查询的IP地址 %s 来源地是:"%args)
  print("国家:%s"%(str[0])) #访问数组里面的值
  print("省份:%s"%(str[1]))
  print("城市:%s"%(str[2]))
  print("区域:%s"%(str[3]))
  str[4] = str[4].replace('\n', '') #去掉回车符号
  print("运营商:%s"%(str[4]))
  print("数据来源<www.ipip.net免费查询接口>")
  print("****************************************")
  strpp={}         #定义一个字典strpp
  strpp=response2.json()  #把英文网站json接口返回值传给字典strpp
  print("\n")        #下面就是直接从字典取值,显示。
  print("您查询的IP地址 %s 来源地是:"%(strpp.get('query')))
  print("国家:%s"%(strpp.get('country')))
  print("城市:%s"%(strpp.get('city')))
  print("经纬度坐标:%s,%s"%(strpp.get('lat'),strpp.get('lon')))
  print("运营商编号:%s"%(strpp.get('as')))
  print("ISP服务商:%s"%(strpp.get('isp')))
  print("数据来源<www.ip-api.com免费查询接口>")
  print("****************************************")
if __name__ == "__main__":
  main(sys.argv)

运行的方法是直接进入该程序所在的工程文件夹中,

然后输入cmd

基于python实现查询ip地址来源

然后输入python ip.py ip地址

基于python实现查询ip地址来源

基于python实现查询ip地址来源

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
零基础写python爬虫之抓取糗事百科代码分享
Nov 06 Python
Python中的单行、多行、中文注释方法
Jul 19 Python
python数据结构之线性表的顺序存储结构
Sep 28 Python
Python判断有效的数独算法示例
Feb 23 Python
python3.x 生成3维随机数组实例
Nov 28 Python
关于python中plt.hist参数的使用详解
Nov 28 Python
python绘制彩虹图
Dec 16 Python
Python递归实现打印多重列表代码
Feb 27 Python
python如何利用paramiko执行服务器命令
Nov 07 Python
python 进阶学习之python装饰器小结
Sep 04 Python
Python+tkinter实现高清图片保存
Mar 13 Python
Python if else条件语句形式详解
Mar 24 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
Jun 02 #Python
Pycharm生成可执行文件.exe的实现方法
Jun 02 #Python
Python实现初始化不同的变量类型为空值
Jun 02 #Python
浅谈Python程序的错误:变量未定义
Jun 02 #Python
在python3.64中安装pyinstaller库的方法步骤
Jun 02 #Python
PyInstaller的安装和使用的详细步骤
Jun 02 #Python
Pyinstaller 打包发布经验总结
Jun 02 #Python
You might like
php中批量删除Mysql中相同前缀的数据表的代码
2011/07/01 PHP
PHP中使用unset销毁变量并内存释放问题
2012/07/05 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
2013/05/03 PHP
php setcookie(name, value, expires, path, domain, secure) 参数详解
2013/06/28 PHP
随机显示经典句子或诗歌的javascript脚本
2007/08/04 Javascript
JS 屏蔽键盘不可用与鼠标右键不可用的方法
2013/11/18 Javascript
javascript编写实用的省市选择器
2015/02/12 Javascript
jQuery简单操作cookie的插件实例
2016/01/13 Javascript
JavaScript实现简洁的俄罗斯方块完整实例
2016/03/01 Javascript
jquery弹出遮掩层效果【附实例代码】
2016/04/28 Javascript
使用JavaScript实现ajax的实例代码
2016/05/11 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
JavaScript该如何学习 怎样轻松学习JavaScript
2017/06/12 Javascript
vue axios 二次封装的示例代码
2017/12/08 Javascript
Vue组件间通信 Vuex的用法解析
2019/08/05 Javascript
Vue3+elementui plus创建项目的方法
2020/12/01 Vue.js
Linux下Python获取IP地址的代码
2014/11/30 Python
Python3读取文件常用方法实例分析
2015/05/22 Python
python编写朴素贝叶斯用于文本分类
2017/12/21 Python
利用python和百度地图API实现数据地图标注的方法
2019/05/13 Python
12个步骤教你理解Python装饰器
2019/07/01 Python
python如果快速判断数字奇数偶数
2019/11/13 Python
Python如何实现爬取B站视频
2020/05/20 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
Python的轻量级ORM框架peewee使用教程
2021/02/05 Python
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
CHARLES & KEITH澳大利亚官网:新加坡时尚品牌
2019/01/22 全球购物
英国曼彻斯特宠物用品品牌:Bunty Pet Products
2019/07/27 全球购物
六一儿童节主持词
2014/03/21 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
导游词之杭州西湖
2019/09/19 职场文书
python 爬取华为应用市场评论
2021/05/29 Python
探讨Java中的深浅拷贝问题
2021/06/26 Java/Android
Android RecyclerView实现九宫格效果
2022/06/28 Java/Android