最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
python验证公网ip与内网ip的实现示例
时间:2026-09-25 08:00:02 编辑:袖梨 来源:一聚教程网
验证公网IP地址
Python中验证公网IP地址的方法主要是通过访问指定的网站或使用Python库中的特定模块来获取当前系统的公网IP地址。
1.使用urllib库访问百度
import urllib.requestdef get_public_ip(): data = urllib.request.urlopen('http://www.b*a*i*du.com/s?wd=ip').read() data = data.decode('UTF-8') start = data.find('您的IP地址是') if start == -1: return False start += 7 end = data.find('&', start) if end == -1: return False return data[start:end]print(get_public_ip())
2.使用requests库
import requestsdef get_public_ip(): url = 'https://api.i*p**ify.org' response = requests.get(url) return response.text.strip()print(get_public_ip())
验证内网IP地址
Python中验证内网IP地址的方法也比较简单,可以通过获取本地网络设置信息或使用Python标准库中的socket模块来获取。
1.使用socket模块
import socketdef get_local_ip(): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(('8.8.8.8', 80)) ip_address = s.getsockname()[0] s.close() return ip_addressprint(get_local_ip())
2.使用psutil库
import psutildef get_local_ip(): addrs = psutil.net_if_addrs() for interface_name, interface_addresses in addrs.items(): for address in interface_addresses: if str(address.family) == 'AddressFamily.AF_INET': return address.addressprint(get_local_ip())
总结
通过以上代码,我们可以轻松地验证公网IP地址和内网IP地址。需要注意的是,公网IP地址是唯一的,因为它是由ISP分配的,而内网IP地址在本地网络中是唯一的,但在全球范围内并不唯一。因此,在编写代码时需要考虑不同的使用场景。
到此这篇关于python验证公网ip与内网ip的实现示例的文章就介绍到这了,更多相关python验证公网ip与内网ip内容请搜索一聚教程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持一聚教程网!