Welcome, visitor!

This is my personal technology station, where I will publish my personal articles to record my learning of technology. You can follow my website to get the latest news or like my articles.

This website belongs to the personal website and does not support registration, comments, rewards, etc. If you have any questions about my article, please contact me by email.

contact information:q981331502@163.com

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目

IPDATA

纯真IPv4数据库镜像 / ZXinc_IPv6数据库镜像及MySQL脚本同步更新 for Python3(原czipdata项目)

Github:https://github.com/a76yyyy/ipdata(推荐)

Gitee :https://gitee.com/a76yyyy/ipdata(更新频率较低)

功能

  1. 通过Python实现纯真IPv4数据库及ZXinc_ipv6数据库的镜像更新,数据库在data文件夹下;
  2. 将数据文件解析为txt格式;
  3. 将数据文件全量导入mysql中,请先安装mysql并启用服务;
  4. 将mysql数据库中的IP数据库内的地址细分为省市区;
  5. 生成sql脚本文件的gz压缩文档,请先安装 gzip 并添加至系统变量(默认提供gz压缩文档, 不提供sql脚本);
  6. Windows使用BAT文件实现数据库的自动更新和推送;
  7. 结合计划任务可实现windows的定时更新。

数据文件

文件 内容
czipdata_version.bin 本地数据文件版本记录
czipdata.dat 纯真IPv4数据文件
czipdata.txt 纯真IPv4数据TXT文件
ipv6data.db ZXinc_IPv6数据文件
ipv6data.txt ZXinc_IPv6数据TXT文件
correct.json 地址细分纠错文件
ipdatabase.sql IP数据库sql脚本
iprange_info.sql 纯真IPv4数据表sql脚本
ipv6_range_info.sql ZXinc_IPv6数据表sql脚本
college_info.sql 高校信息表sql脚本

TODO

  1. 将数据文件导入sqlite3数据库文件中;
  2. 实现定期release;
  3. 实现data文件夹的分类存储;
  4. 实现数据库的增量更新;
  5. 实现Linux定时更新.

图片

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4b0565a.png

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4c90c21.png1

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4d5e27d.png2

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4e2b7e7.png3

API

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4ee05a9.png4

示例IPv4 API接口(暂不提供源码):https://api.a76yyyy.cn/ip?function=ipInfo&params1=114.114.114.114

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4f506df.png5

示例IPv6 API接口(暂不提供源码):https://api.a76yyyy.cn/ip?function=ipv6Info&params1=2400:3200::1

纯真IP/ZXinc_IPv6数据库镜像及MySQL脚本更新——IPDATA项目post 91 60d9de4fc9b8e.png6

示例日志


开始检查IPv4数据库更新: 
---------------处理中, 请稍候---------------
地址:http://update.cz88.net/ip/copywrite.rar
开始下载: .\tmp\copywrite.rar
[ .\tmp\copywrite.rar] 下载完成 0.27 KB / 0.27 KB
下载完成,共花费了0.16s
IPv4数据文件新版本: 44370, 大小: 5396789
------------------------------------------- 

开始更新IPv4数据文件:  .\data\czipdata.dat
---------------处理中, 请稍候---------------
地址:http://update.cz88.net/ip/qqwry.rar
开始下载: .\tmp\qqwry.rar
[ .\tmp\qqwry.rar] 下载完成 5270.30 KB / 5270.30 KB
下载完成,共花费了7.89s
成功写入到 .\data\czipdata.dat, 10,448,828字节
------------------------------------------- 

将IPv4数据文件写入文本文件中 dat -> txt
-------------------------------------------
写入文件  .\data\czipdata.txt 中, 请稍候...
写入完成, 写入 530116 条数据.
------------------------------------------- 

开始检查IPv6数据库更新: 
---------------处理中, 请稍候---------------
地址:http://ip.zxinc.org
IPv6数据文件新版本: 20210511
------------------------------------------- 

开始更新IPv6数据文件:  .\data\ipv6wry.db
---------------处理中, 请稍候---------------
地址:http://ip.zxinc.org/ip-20210511.7z
开始下载: .\tmp\ip-20210511.7z
[ .\tmp\ip-20210511.7z] 下载完成 552.43 KB / 552.43 KB
下载完成,共花费了0.47s
成功写入到 .\data\ipv6wry.db, 565,689字节
------------------------------------------- 

将IPv6数据文件写入文本文件中 db -> txt
-------------------------------------------
写入文件  .\data\ipv6data.txt 中, 请稍候...
写入完成, 写入 176315 条数据.
------------------------------------------- 

检索IPv4数据库是否存在 
---------------处理中, 请稍候---------------
将IPv4数据文件" .\data\czipdata.txt"导入Mysql数据库中: 
---------------处理中, 请稍候---------------
本批次(行:0 - 99999)已处理完成。共需处理100000条,成功转换100000条。
系统将自动处理下一批IPv4数据(行:100000 - 199999)…… 
---------------处理中, 请稍候---------------
…… 
---------------处理中, 请稍候---------------
本批次(行:500000 - 530115)已处理完成。共需处理30116条,成功转换30116条。
-------------------------------------------
已全部导入完成, 共导入530116条IPv4数据.

连接IP数据库, 并检索大学数据库信息: 
---------------处理中, 请稍候---------------
大学数据库不存在,重新部署中: 
---------------处理中, 请稍候---------------
从https://github.com/pg7go/The-Location-Data-of-Schools-in-China导入大学-8084.json至 .\tmp\college.json
成功将大学地址数据写入到 .\tmp\college.json, 1,752,894字节
------------------------------------------- 
将大学数据文件" .\tmp\college.json"导入Mysql数据库中: 
---------------处理中, 请稍候---------------
本批次(行:0 - 999)已处理完成。共需处理1000条,成功转换1000条。
系统将自动处理下一批IP数据(行:1000 - 1999)…… 
---------------处理中, 请稍候---------------
…… 
---------------处理中, 请稍候---------------
本批次(行:8000 - 8083)已处理完成。共需处理84条,成功转换84条。
------------------------------------------- 
已全部导入完成, 共导入8084条数据.

IP数据库连接成功! 
------------------------------------------- 
开始载入纠错文件correct.json: 
---------------处理中, 请稍候---------------
载入完成! 
------------------------------------------- 
将IP数据库内的地址细分为省市区: 
---------------处理中, 请稍候---------------
本批次(行:0 - 19999)已处理完成。共需处理20000条,成功转换20000条。
系统将自动处理下一批IP数据(行:20000 - 40000)…… 
---------------处理中, 请稍候---------------
…… 
---------------处理中, 请稍候---------------
本批次(行:520000 - 530115)已处理完成。共需处理10116条,成功转换10116条。
------------------------------------------- 
已全部完成转换。
操作完成! 

检索IPv6数据库是否存在 
---------------处理中, 请稍候---------------
将IPv6数据文件" .\data\ipv6wry.db"导入Mysql数据库中: 
---------------处理中, 请稍候---------------
…… 
---------------处理中, 请稍候---------------
本批次(行:150000 - 176314)已处理完成。共需处理26315条,成功转换26315条。
-------------------------------------------
已全部导入完成, 共导入176315条IPv6数据.

连接IP数据库, 并导出为sql文件: 
---------------处理中, 请稍候---------------
IP数据库gz压缩档导出成功! 
高校信息表gz压缩档导出成功! 
IPv4数据表gz压缩档导出成功! 
IPv6数据表gz压缩档导出成功! 

 .\
A  data/college_info.sql.gz
M  data/czipdata_version.bin
M  data/ipdatabase.sql.gz
M  data/iprange_info.sql.gz
M  data/ipv6_range_info.sql.gz
M  data/ipv6data_version.bin
[main 1c2b048] 定时同步 2021-06-26 10:29:53
 10 files changed, 6 insertions(+), 4 deletions(-)