python通过ip获取地理位置等ip信息

article/2025/10/14 15:48:23

作者讲话:本人是一个菜鸟勿喷本文章仅供娱乐。
ps:以后可以线下挑战了,直接顺着网线找到你!哈哈哈

查询IP数据网站

使用结果1
‘http://freeapi.ipip.net/ip’ 中文网站
在这里插入图片描述
使用结果2
‘http://ip-api.com/json/ip’ 外国网站
在这里插入图片描述

实验代码

import sys
import requestsdef 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 = {}  # 定义一个字典strppstrpp = response2.json()  # 把英文网站json接口返回值传给字典strppprint("\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)

运行结果以及过程

1、程序运行方法
在这里插入图片描述
2、运行结果
在这里插入图片描述


http://chatgpt.dhexx.cn/article/NZM7iaFa.shtml

相关文章

如何利用IP地址确定地理位置

近年来&#xff0c;基于IP地址的网络应用层出不穷&#xff0c;主要包括定向广告、社交网络、网络安全、网络服务性能优化、用户位置画像等。 互联网用户的物理位置对于很多不同类型的应用是有不同的用处的。以搜索引擎为首等应用通常会使用用户的位置来自定义对用户请求的响应。…

python根据IP查询地理位置

实现了输入ip地址返回该ip对应的信息。 如图&#xff1a;解释如下&#xff1a; 打开百度&#xff0c;输入ip打开调试界面&#xff0c;点击图中3号位置过滤在图中4号框位置输入想要查询的ip&#xff0c;然后点查询依次点击图中5、6&#xff0c;找到timestamp字段&#xff0c;粘…

教你如何使用ip地址进行高精度定位

IP这个概念大部分人都很熟悉了&#xff0c;这里IP的意思不是个人标签&#xff0c;而是IP地址&#xff08;英语&#xff1a;Internet Protocol Address&#xff09;是一种在Internet上的给主机编址的方式&#xff0c;也称为网际协议地址。IP地址是IP协议提供的一种统一的地址格式…

windows访问Ext4磁盘

作者 QQ群&#xff1a;852283276 微信&#xff1a;arm80x86 微信公众号&#xff1a;青儿创客基地 B站&#xff1a;主页 https://space.bilibili.com/208826118 参考 在Windows下读取Ext4分区 推荐一款Windows下读取 Linux文件系统Ext4的最佳软件 Paragon ExtFS api-ms-win-cr…

【Linux】Linux Ext2文件系统

下面以Linux的Ext2为例介绍文件系统的组成。 Ext2采用了分立式目录结构&#xff0c;即一个文件的目录分为目录项和索引节点两个部分。 Ext2的索引节点 在一个实际分立式目录的文件系统中&#xff0c;索引节点&#xff08;inode&#xff09;主要需要两部分内容来支持&#xff…

EXT2文件系统实现原理

目录 一 EXT2文件系统结构概览 2 1.1 EXT2文件系统结构框图 2 1.2 EXT2重要数据结构 3 二 块缓存 6 三 EXT2文件系统挂载 7 3.1 注册ext2文件系统类型 7 3.2 ext2文件系统挂载 7 3.3文件系统操作 9 EXT2文件系统结构概览 1.1 EXT2文…

模拟实现EXT2文件系统

设计EXT2文件系统 实验目的 &#xff08;1&#xff09;掌握文件系统的工作原理 &#xff08;2&#xff09;理解文件系统的主要数据结构 &#xff08;3&#xff09;学习较为复杂的 Linux 下的编程 &#xff08;4&#xff09;了解 EXT2 文件系统的结构 实验内容 设计并实现…

WIN10访问linux分区「ext2fsd」

尝试ext2explore、Paragon ExtFS都不好用&#xff0c;强烈安利ext2fsd&#xff0c;可读写&#xff0c;很强大 转自&#xff1a;https://blog.csdn.net/cruise_h/article/details/12894135 ext2fsd是国人发起的项目&#xff0c;主页 http://www.ext2fsd.com/ 下载&#xff1a;h…

windos读写ext3工具_“ ext2fsd” Windows系统工具,用于读写ext2 / 3/4文件系统

在过去的几天里&#xff0c;我使用定制版本的Bridge Linux来扔Arch Linux. 修改lxdm主题时&#xff0c;我无意间无法进入系统&#xff0c;也无法切换命令行模式&#xff0c;因此我不得不找出Windows系统中是否存在可以读写ext4文件系统的工具. 以前尝试过ext2explore&#xff0…

ext2文件系统

ext2是Linux早期比较流行的文件系统&#xff0c;很多文件系统&#xff08;NTFS、FAT32等&#xff09;的设计都源自于它。只要掌握了ext2文件系统&#xff0c;其他文件系统大同小异。 ext2文件系统的布局如下&#xff1a; 文件系统中存储的最小单位是块&#xff08;Block&#…

文件系统系列专题之 Ext2/3/4

一、Ext概述 EXT是延伸文件系统&#xff08;Extended file system&#xff0c;缩写为 ext或 ext1&#xff09;&#xff0c;也译为扩展文件系统&#xff0c;第 1 个扩展文件系统&#xff08;ext1&#xff09;由 Remy Card 设计&#xff0c;并于 1992 年 4 月引入到 Linux 中。采…

深入理解ext2文件系统

ext&#xff12;文件系统需要考虑哪些因素&#xff1a; 1.最重要的是保证数据的安全性。 2.效率&#xff0c;方便文件的查找读写。 3.文件在磁盘空间占用空间小。 (1)树形目录结构 EXT文件系统采用一个独立的顶级树形目录架构&#xff08;即所有一切都从root根目录开始&…

学习篇 | LINUX 内核的文件系统 -- ext2

引言&#xff1a; 本篇博客中主要讲述的是 LINUX 内核所用的文件系统 —— 第二代扩展文件系统 Ext2&#xff0c;Ext2是数个Linux发行版本的默认文件系统。 百度百科 -- ext2 目录 引言&#xff1a; Ext2 文件系统 磁盘的物理组成 ext2 文件系统的格式 ext2 文件系统目录…

ext2文件系统详解

第一部分磁盘的物理组成 磁盘的基本概念&#xff1a; 扇区为最小的物理存储单位&#xff0c;每个扇区为512字节。 将扇区组成一个圆&#xff0c;那就是柱面&#xff0c;柱面是分区的最小单位。 第一个扇区很重要&#xff0c;里面有硬盘主引导记录&#xff08;Masterbootrecord…

编译原理——证明文法具有二义性

证明一个文法具有二义性我们需要掌握两个知识点。 1.语法分析树 定义很简单&#xff0c;就是把一个句型的推导写成树的形式&#xff0c;这种表示法就叫语法分析树&#xff0c;或者简称为语法树。大概是这个样子的 2.二义性 一个文法存在某个句子对应两棵不同的语法树&…

二义性文法的理解和消除方法

给定文法G&#xff0c;如果存在句子s&#xff0c;它有两棵不同的分析树&#xff0c;那么称G是二义性文法 从编译器角度&#xff0c;二义性文法存在问题&#xff1a; 同一个程序会有不同的含义 因此程序运行的结果不是唯一的 一个句子有多于一棵分析树&#xff0c;仅与文法和句子…

2.5.3 文法二义性的消除

2.5.3 文法二义性的消除 (1 )不改变文法中原有的语法规则,仅加进一些语法的非形式规定。 例如,对于上例文法 G [ E ],不改变已有的 4 条规则,仅加进运算符的优先顺序和结合规则,即 * 优先于 ; , * 服从左结合。这样,对于文法 G [ E ]中的句子 i * i i 只有唯一的一棵语法树…

C#调用方法时的二义性解决方法

如图中出现的错误&#xff1a; 里面有三个名字为SetCurrentSelectableObject的方法&#xff0c;其中两个的参数都是引用对象&#xff0c;一个是SelectableObject类型&#xff0c;一个是string类型&#xff0c;这样导致引用出现了二义性&#xff0c;解决的办法就是对null进行强制…

[编译原理]如何判断某文法的二义性以及找到文法对应的语言

随便说说 这学期开编译原理课了&#xff0c;觉得还挺有意思的&#xff0c;写点博客记录记录。 如何根据文法找到其对应生成的语言 如图所示&#xff0c;假设我们现在有文法如下&#xff1a; &#xff1a;&#xff1a;&#xfffd;(&#xfffd;)&#xff1a;&#xfffd;−>…