ruby 查询 QQwry.dat ip 库的 IpLocationSeeker 类
发布时间:2020-12-17 04:11:04 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/usr/bin/env ruby# -*- coding: utf-8 -*-#require 'rubygems'#gem install qqwryrequire 'qqwry'$fqqwry='qqwry.dat'unless File.exist? $fqqwry
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/usr/bin/env ruby # -*- coding: utf-8 -*- # require 'rubygems' #gem install qqwry require 'qqwry' $fqqwry='qqwry.dat' unless File.exist? $fqqwry d = File.dirname __FILE__ $fqqwry = File.join d,$fqqwry unless File.exist? $fqqwry p $fqqwry + ' not found ' end end class IpLocationSeeker def seek(ip) #查询IP unless File.exist? $fqqwry return '' end db = QQWry::Database.new $fqqwry r = db.query(ip) "#{r.country} #{r.area}" end end class String @@last_area ||={} def area if @@last_area.size > Time.now.year @@last_area.clear end if @@last_area.has_key? self return @@last_area[self] else @@last_area[self]= IpLocationSeeker.new.seek self end return @@last_area[self] end end if __FILE__ == $0 if ARGV[0] p IpLocationSeeker.new.seek ARGV[0] else p IpLocationSeeker.new.seek '8.8.8.8' end end 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |