【问题标题】:uninitialized constant Twitter::Search (NameError) ~ Ruby noob未初始化的常量 Twitter::Search (NameError) ~ Ruby noob
【发布时间】:2012-10-25 21:48:02
【问题描述】:

我正在尝试为我正在构建的 Twitter 机器人运行以下代码(如果这有助于我的事业,则不要向人们发送垃圾邮件)但我不断收到此错误消息:

uninitialized constant Twitter::Search (NameError)

在编程方面,我完全是个菜鸟,尤其是 ruby​​。请有人帮忙!

require 'rubygems'
require 'twitter'

Twitter.configure do |config|
  config.consumer_key = "XXXXXXXXXXXXXXXXXXXXXX"
  config.consumer_secret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  config.oauth_token = "XXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  config.oauth_token_secret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
end

Twitter.user

  client = Twitter::Client.new
  search = Twitter::Search.new

  search.containing("news").containing("journalism").containing("newsrooms").result_type("recent").per_page(3).each do |x|
    until x.text.length <= 90 do
      y = x.text.chop!
    end
    y = "via: " + y
    client.update("#{y}")
    end

【问题讨论】:

  • 我强烈建议您删除密钥/令牌并用填充字符串替换它们。这是等待发生的安全漏洞。
  • 我不知道twitter gem,但只要你使用的是当前的Ruby系统,你应该不需要写require 'rubygems'
  • 感谢亚伯拉罕。就像我说的。我是一个总的n00b。 @Sawa:所以我不应该需要'rubygems'?你认为这会有所帮助吗?
  • require 'rubygems' 是 Ruby 1.8 需要的,但 Ruby 1.9 不需要。

标签: ruby twitter terminal


【解决方案1】:

我假设您使用的是最新版本的 twitter gem。

根据文档 (Twitter Documentation),没有 Twitter::Search 搜索似乎是通过Twitter::API.search 方法完成的(Method Documentation here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    • 2014-05-28
    • 2020-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多