【问题标题】:Using ruby whois使用红宝石 whois
【发布时间】:2011-09-27 10:23:52
【问题描述】:

我需要检索给定站点的 whois 信息。因为 whois 内容因每个 whois 服务器而异,所以我需要解析我得到的 whois 内容。

我正在使用 php 显示来自 db 的内容,最初尝试在 php 中解析它。现在我知道有 ruby​​ whois 包可以解析 whois 内容。
所以想法是在后台运行 ruby​​ 程序,将 whois 内容放入数据库,然后在发出请求时使用 php 显示。

我已经安装了 ruby​​ 1.8.7 和 whois 并尝试了 ruby document 中给出的示例。但它的给予

/opt/lampp/htdocs/labs/ruby/ruby-whois.rb:1: uninitialized constant Whois (NameError)  

rubywhois 与 ruby​​ 不同吗?任何人都可以在这方面帮助我。

【问题讨论】:

    标签: ruby rubygems whois whois-ruby


    【解决方案1】:

    您是否使用gem install whois 安装了库?之后,您必须在代码中要求它 (require 'whois') 才能使用它。

    【讨论】:

    • 不,我刚刚使用 yum 安装了 ruby​​。现在我试了一下,但收到错误消息“bash: gem: command not found...”
    • 您安装了哪个版本的 Ruby(请咨询ruby -v)?如果是 1.8.6,您可能需要单独安装 Rubygems。参见例如本教程适用于 FC5:linuxweblog.com/ruby-on-rails-install。顺便说一句,你不需要 Rails,但本教程的开头对你来说应该很有趣。
    【解决方案2】:

    我找到了。这些都是我做过的事情。

    • 已安装 ruby​​,使用 yum install ruby
    • 试过 gem install whois,它问我是否要安装 gem 包并安装。
    • 安装rubygem后使用gem install whois命令

    现在我创建了一个扩展名为 .rb 的文件,其内容如下,

    require 'rubygems'
    require 'whois'
    r = Whois.whois("google.com")
    puts r.created_on  
    

    我用这个命令在终端运行这个文件,

    ruby /opt/lampp/htdocs/labs/ruby/ruby-whois.rb
    

    输出是,

    Mon Sep 15 00:00:00 +0530 1997  
    

    感谢您的所有努力。

    【讨论】:

    • 很好,你解决了你的问题。请接受上面的答案(计票下方的小勾号),以便其他人看到此问题已得到解答。
    猜你喜欢
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多