Python 获取当前IP地址(爬虫代理)

news/2024/9/23 9:35:04/

Python 获取当前IP地址(爬虫代理)

在这里插入图片描述

在Python中,获取当前的公网IP地址通常涉及到发送一个请求到外部服务,因为本地IP地址通常只在你的私有网络内部是可见的,而公网IP地址是由你的ISP(互联网服务提供商)分配的。

一个常见的方法是使用第三方API或服务,如 httpbin.org 提供的 ip 端点。以下是使用 requests
库获取当前公网IP的示例:

python">import requestsdef get_public_ip():try:response = requests.get('https://httpbin.org/ip')response.raise_for_status()  # 检查请求是否成功ip = response.json()['origin']return ipexcept requests.RequestException as e:print(f"请求出错: {e}")return None
# 获取并打印当前的公网IP
public_ip = get_public_ip()
if public_ip:print(f"当前公网IP地址是: {public_ip}")
在这个示例中,我们向 httpbin.org/ip 发送了一个GET请求,这个服务会返回一个包含请求信息的JSON对象,其中包括了 origin 字段,该字段包含了发起请求的源IP地址。请注意,这个IP地址是公网IP地址,它可能代表了你的整个网络(如果你是在局域网后面),而不一定是你计算机的本地IP地址。
  • 如果你想要获取本地网络中的IP地址,你可以使用Python的 socket 库来实现:
python">import socketdef get_local_ip():try:hostname = socket.gethostname()local_ip = socket.gethostbyname(hostname)return local_ipexcept socket.error as e:print(f"获取本地IP出错: {e}")return None
# 获取并打印当前的本地IP
local_ip = get_local_ip()
if local_ip:print(f"当前本地IP地址是: {local_ip}")

这段代码将返回你的计算机在本地网络中的IP地址。如果你的计算机连接到多个网络或具有多个网络接口,你可能需要检查每个接口来找到正确的IP地址。

请确保你已经安装了 requests 库,如果没有安装,可以使用以下命令安装:

pip install requests

获取公网IP的方法可能会因网络环境和地理位置而异,如果你在一个受限制的网络环境中,你可能需要使用不同的服务或API。


http://www.ppmy.cn/news/1462834.html

相关文章

第十五届“北斗杯”全国青少年空天科技体验与创新大赛安徽赛区阜阳市解读会议

5月19日,第十五届“北斗杯”全国青少年空天科技体验与创新大赛安徽赛区阜阳解读活动在阜阳市图书馆隆重举行。共青团阜阳市委员会学少部副部长丁晓龙、阜阳市师范大学物理系副主任黄银生教授、安徽科技报阜阳站站长李伟、市人工智能学会秘书长郭广泽、“北斗杯”安徽…

Android9禁止某个app启动

禁止某个app通过开机广播自启动,覆盖住Launcher 代码位置 : frameworks/base/services/core/java/com/android/server/am/ActivityManagerService.java具体修改如下 public final int startActivityAsUser(IApplicationThread caller, String callingPackage,Inte…

Xed编辑器开发第三期:使用Rust从0到1写一个文本编辑器

继续Xed编辑器开发第二期:使用Rust从0到1写一个文本编辑器的开发进度,这是第三期的内容: 4.1 逐行清除 在每次刷新之前清除整个屏幕似乎不太理想,最好在重新绘制每行时清除每行。让我们删除 Clear(ClearType::All),而是在我们绘…

【simple-admin】simple-admin-core 首次服务启动 如何配置mysql数据库表 | 如何docker启动core

一、下载启动S-A 1、下载源码 https://github.com/suyuan32/simple-admin-core.git git clone https://github.com/suyuan32/simple-admin-core.git2、修改etc下yaml配置 需要对RPC和API 分别2个文件夹下的etc下的yaml进行修改 替换成我们的数据库 3、初始化数据库 核心代…

BeautifulSoup4通过lxml使用Xpath,以及获取(定位)元素和其文本或者属性

环境:win10,python3.8.10 首先需要安装:beautifulsoup4,lxml 使用命令: pip38 install beautifulsoup4 pip38 install lxml 安装完毕后查看一下: 写代码: from bs4 import BeautifulSoup …

初识Java--开启我的Java学习之旅

目录 一、JAVA语言概述二、JAVA语言的重要性2.1语言使用广泛程度2.2工作领域2.3在校招岗位的需求2.4 java语言发展简史2.5Java语言特性 三、初识java的main方法四、运行java程序五、【面试题】JDK、JRE、JVM之间的关系? 一、JAVA语言概述 Java是一种优秀的程序设计…

Stable Diffusion【写实模型】:逼真,逼真,超级逼真的国产超写实摄影大模型万享XL

今天和大家分享的是一个国产万享系列中使用量最高的大模型:万享XL_超写实摄影,顾名思义,该大模型主要是面向写实摄影,一方面生成的图片人物皮肤纹理细节超级逼真,另一方面对于光影效果的处理也非常到位。对于万享XL超写实摄影大模…

前端 CSS 经典:元素倒影

前言&#xff1a;好看的元素倒影&#xff0c;可以通过-webkit-box-reflect 实现。但有兼容问题&#xff0c;必须是 webkit 内核的浏览器&#xff0c;不然没效果。但是好看啊。 效果图&#xff1a; 代码实现&#xff1a; <!DOCTYPE html> <html lang"en"&g…