
1.纯真IP网站申请免费离线应用步骤官方地址 纯真社区版IP库 - 纯真网络注册账号之后提交申请。 等待通过即可个人开发使用可以查到大部分的 IP2. Python 读取纯真离线 IP 库示例拿到纯真社区版离线库qqwry.dat之后最省事的方式是使用qqwry这个第三方库它封装了 dat 文件的二进制解析逻辑直接传入 IP 就能返回国家、省份、城市和运营商信息。2.1 安装依赖pip install qqwry2.2 文件路径说明qqwry.dat是纯真社区版离线库文件从纯真官网申请通过后下载得到通常是一个压缩包解压后即可看到该文件。建议把 dat 文件放在项目根目录下的data目录中例如./data/qqwry.dat避免使用绝对路径导致换机器后无法运行。代码中推荐用os.path或pathlib拼接路径保证在 Windows 和 Linux 下都能正确读取。dat 文件会定期更新替换文件后无需改动代码重新运行即可生效。2.3 完整示例代码import os from qqwry import QQwry dat 文件路径项目根目录下的 data/qqwry.dat BASE_DIR os.path.dirname(os.path.abspath(file)) DAT_PATH os.path.join(BASE_DIR, data, qqwry.dat) 加载离线库load_file 返回 True 表示加载成功 q QQwry() if not q.load_file(DAT_PATH): raise RuntimeError(qqwry.dat 加载失败请检查文件路径是否正确) 待查询的 IP 列表 ips [114.114.114.114, 8.8.8.8, 223.5.5.5] for ip in ips: # lookup 返回 (国家/地区, 运营商) 二元组查询失败时返回 None result q.lookup(ip) if result is None: print(f{ip} - 未查询到结果) continue country, area result print(f{ip} - {country} {area}) 输出示例 114.114.114.114 - 江苏省南京市 南京信风网络科技有限公司GreatbitDNS服务器 8.8.8.8 - 美国 加利福尼亚州圣克拉拉县山景市谷歌公司DNS服务器 223.5.5.5 - 浙江省杭州市 阿里云2.4 常见问题加载失败优先检查路径是否存在、文件名是否为qqwry.dat注意大小写以及文件是否完整解压。查询结果为 None说明该 IP 不在库中或传入的 IP 格式不合法建议先用ipaddress模块做一次校验。结果不够精确社区版库的精度有限部分 IP 只能定位到省份或运营商商业场景建议使用官方商业版 API。批量查询性能dat 文件加载一次后常驻内存循环调用lookup即可不要每次查询都重新load_file。