以下のように画像付きのツイートをしたい。
$ gem install twitter
$ ls media/note6
0.txt 1.jpg
$ ruby media-tweet.rb
media-tweet.rb
#!/usr/bin/env ruby
require 'twitter'
CLIENT = Twitter::REST::Client.new do |config|
.consumer_key = "XXXXXXXXXXXXXXXXXXXXXXXXX"
config.consumer_secret = "ssssssssssssssssssssssssssssssssssssssssssssssssss"
config.access_token = "0000000-tttttttttttttttttttttttttttttttttttttttttt"
config.access_token_secret = "yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
configend
# dir/0.txt (mandatory)
# dir/1.png (or jpg, ...)
# dir/2.png
# dir/3.png
# dir/4.png
def media_tweet(dir)
= Dir.glob("#{dir}/[01234].*").sort
files = files.shift
tweet_filename = File.read(tweet_filename)
tweet = []
media_ids .each do |media_filename|
files<< CLIENT.upload(File.new(media_filename))
media_ids end
CLIENT.update tweet, { media_ids: media_ids.join(',') }
end
'media/note6')
media_tweet(
# vim: set filetype=ruby:
media/note6/0.txt
新刊のお知らせです。2015年11月に『数学ガールの秘密ノート/ベクトルの真実』が刊行されます。お楽しみに!現在Amazonで予約受付中です。(^^)[自動投稿]
https://bit.ly/girlvector
media/note6/1.jpg
media-tweet.rb
中の consumer_key
,
consumer_secret
, access_token
,
access_token_secret
はもちろん自分のものを設定します。media_tweet
メソッドに与えるディレクトリには、0.txt
というツイート内容を表すテキストファイルと、1.jpg
や2.png
のように同時にツイートする画像ファイルを用意しておきます。画像ファイルは4個まで。ruby media-tweet.rb
でツイートできます。Enjoy!
呼び出すたびに違うフォルダの内容をツイートするように変更したもの。