Skip to content

Instantly share code, notes, and snippets.

@hilotter
Created September 9, 2014 14:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hilotter/928064d35cb94144c900 to your computer and use it in GitHub Desktop.
Save hilotter/928064d35cb94144c900 to your computer and use it in GitHub Desktop.
twitter api test
source 'https://rubygems.org'
gem 'twitter'
gem 'pry'
gem 'activerecord'
gem 'sqlite3'
require "rubygems"
require "bundler/setup"
require 'active_record'
ActiveRecord::Base.establish_connection(
adapter: "sqlite3",
database: "tw.sqlite3"
)
class InitialSchema < ActiveRecord::Migration
def self.up
create_table :tweets do |t|
t.string :tw_id, :null => false
t.string :text, :null => false
t.timestamps
t.index :tw_id, :unique => true
end
end
def self.down
drop_table :tweets
end
end
InitialSchema.migrate(:up)
require 'rubygems'
require 'twitter'
require "active_record"
require 'pry'
require 'logger'
CONSUMER_KEY = "YOUR CONSUMER_KEY"
CONSUMER_SECRET = "YOUR CONSUMER_SECRET"
ACCESS_TOKEN = "YOUR ACCESS_TOKEN"
ACCESS_TOKEN_SECRET = "YOUR ACCESS_TOKEN_SECRET"
ActiveRecord::Base.establish_connection(
adapter: "sqlite3",
database: "tw.sqlite3"
)
class Tweet < ActiveRecord::Base
end
def main
log = Logger.new("test.log", 3)
client = Twitter::REST::Client.new do |config|
config.consumer_key = CONSUMER_KEY
config.consumer_secret = CONSUMER_SECRET
config.access_token = ACCESS_TOKEN
config.access_token_secret = ACCESS_TOKEN_SECRET
end
loop do
tw_cnt = Tweet.count
text = "#{tw_cnt + 1}番目のつぶやき"
begin
tweet = client.update!(text)
Tweet.create!(tw_id: tweet.id, text: text)
p text
rescue => e
log.error("#{text}: #{e.message}")
end
sleep 36 # 1時間に100回投稿
end
end
main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment