
有很多大佬搭建的查询本机公网 IP 的服务,本文记录相关内容。
可以访问获取公网 IPv4 IP 的站点:
import requests
 
def get_external_ip():
    try:
        ip = requests.get('https://ident.me').text.strip()
        return ip
    except:
        return Nonehttp://jsonip.com/ 在有 IPv6 地址时会优先返回 IPv6 地址
示例返回值:
{"ip":"168.138.188.194","country":"SG","geo-ip":"https://getjsonip.com/#plus","API Help":"https://getjsonip.com/#docs"}import requests
 
def get_external_ip():
    try:
        ip = requests.get("http://jsonip.com/").json().get('ip')
        return ip
    except:
        return None示例返回值:
Current IP Address: 168.138.188.194import requests
import re
url = "http://checkip.dyndns.org"
proxies={'http':'127.0.0.1:****'}
theIP = requests.get(url,proxies=proxies).text
print("your IP Address is: ",  theIP)不支持 IPv6 的网络环境下无法访问
import requests
def getIPv6Address():
    text = requests.get('https://v6.ident.me').text
    return text
if __name__ == "__main__":
    print(getIPv6Address())import requests
 
def get_external_ip():
    try:
        ip = requests.get("http://jsonip.com/").json().get('ip')
        return ip
    except:
        return None
 
if __name__ =="__main__":
    ip = get_external_ip()
    print(ip)import requests
pageURL='http://ipv6.ipv6-test.ch/ip/?callback=?'
content=requests.get(pageURL).text.strip("callback")
data = eval(content)
print(data['ip'])