python获取当前上网IP地址的几种方法

Python与SEO 思享 16浏览 0评论

在python使用场景中,有时候需要获取当前网络IP来实现一些功能。那么,如何用python来实现这个功能呢?下面,来讲讲我是怎么实现的。

通过访问IP网站获取

之前我一直用的获取的IP网站是

http://httpbin.org/ip

但是,今晚发现这个网站打开很慢,甚至出现504的问题。我是需要验证IP才进行下一步程序的执行的,这样也就让程序卡在了这一步

于是网站找了一下python获取IP的几种方式,其中有使用专用网站、使用自带socket库、使用第三方netifaces库三种。其中,第二种获取的是局域网的IP地址,而第三方库需要安装,还是回归到第一种方法,于是,我们可以通过两个网站结合的方式,来确保功能的实现。总不可能两个网站都挂了吧~

实现代码

from urllib.request import urlopen
from json import load
import requests

try:
    ip = load(urlopen('http://httpbin.org/ip', timeout=2))['origin']
except:
    ip_text = requests.get('http://myip.ipip.net', timeout=2).text
    ip = ip_text.lstrip("当前 IP:").split(" ")[0]

问题解决
如果想其他方式实现,可以自行搜索一下就有了

转载请注明:思享SEO博客 » python获取当前上网IP地址的几种方法

扩展阅读

python3报错’encoding’ is an invalid keyword argument for this function

今天碰到一个奇怪的问题,在读txt的时候,报错'encoding' is an invalid keyword argument for this function。于是网上找了一下,这是版本的问题,如果是python2.7版本就会报错。可问题是我用......

什么是ZWNBSP,怎么去除零宽度空白字符

之前转载了一篇获取百度下拉的文章《Python获取百度下拉关键词》今天在使用过程中,发现可以访问接口获取下拉词,但是使用requests请求获取的的却是{}。我再将字符直接写入接口,而非用形参又没有问题。最后无奈将请求的url变量打印,输出的地址也没......

python获取网页中链接的几种方法

对于SEO来说,内容采集是非常普遍的现象。而采集一般需要从网页中提取目标网址。那么,我们如何通过python提取网页中的链接呢,下面分享一篇关于这个问题的文章,大家一起学习探讨...

avatar
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址