PHP实现自动更新纯真数据库IP库qqwry.dat

PHP类
564
0
0
2022-06-01
标签   IP库

PHP如何实现纯真IP库的自动更新呢?其实非常简单,写个定时task,每周更新1次,就能一直保持最新状态,代码如下:

PHP如何从qqwry.dat中解析IP呢?也很简单,有现成的类可用:

PHP解析纯真IP库

<?php
ini_set('max_execution_time', 7200);
ini_set("memory_limit", "2048M");
$copywrite = file_get_contents("http://update.cz88.net/ip/copywrite.rar");
$qqwry = file_get_contents("http://update.cz88.net/ip/qqwry.rar");
$key = unpack("V6", $copywrite)[6];
for($i=0; $i<0x200; $i++)
{
  $key *= 0x805;
  $key ++;
  $key = $key & 0xFF;
  $qqwry[$i] = chr( ord($qqwry[$i]) ^ $key );
}
$qqwry = gzuncompress($qqwry);
$fp = fopen("qqwry.dat", "wb");
if($fp)
{
  fwrite($fp, $qqwry);
  fclose($fp);
}
?>

这种方式现已经不可用了,纯真官方已经禁止了,请求上述两个url会返回text/html的代码,然后gzuncompress就会报错:

gzuncompress(): data error

现在官方只在微信公众号“纯真IP实验室”里提供exe的离线包文件下载,每周更新一次。

如需要dat的离线文件自动更新,需要500元购买一个app code后才行,而且限制一个app code一周只能下载3次。

幸运的是,我在github上发现有好心人提供了qqwry.dat最新IP库文件的下载,找了好久,才发现两个,目前可用,以后就不太清楚了,希望对大家有用。

https://github.com/FW27623/qqwry

https://github.com/lqshome/qqwry