사쿠라 VPS(ubuntu14.04) 빌려, twitterbot 만들었다.
소개
안녕하세요.
4년간 이른바에 살았던 적이 있습니다. 츠쿠바에 거주하는 야기 누마입니다.
학생 3명이 룸 공유합니다.
이번은 최근, 서버 빌렸기 때문에 조금 환경 구축이 테라루비로 bot 만들어 보았을 때의 메모입니다.
서버 환경 구축
우선, 서버 빌리면 각 유저마다 public_html을 만들고, 그 속에서 작업할 수 있도록 하고 싶었기 때문에 했습니다.
아파치에서는
가 있습니다. 그래서 userdir 모듈을 활성화하기 위해 다음과 같이 링크를 붙입니다.
cd/etc/apache2/mods-enabled
sudo ln -s ../mods-available/userdir.conf userdir.conf
sudo ln -s ../mods-available/userdir.load userdir.load
이제/home/각 사용자/public_html 아래에서 작업할 수 있습니다.
sudo a2enmod userdir
이 명령으로도 가능한 것 같습니다. 확인하지 않았습니다.
일단 이번에는 사용하지 않지만 cgi 설정도합니다.
ubuntu이므로, 다음의 요령으로 또 링크를 붙입니다.
sudo ln -s/etc/apache2/mods-available/cgi.load/etc/apache2/mods-enabled/cgi.load
그런 다음/etc/apache2/sites-available/000-default.conf를 편집합니다.
sudo vi/etc/apache2/sites-available/000-default.conf
/etc/apache2/sites-available/000-default.conf
Include conf-available/serve-cgi-bin.conf #コメントを外す
그런 다음 확장자를 설정합니다.
sudo vi/etc/apache2/mods-available/mime.conf
/etc/apache2/mods-available/mime.conf
AddHandler cgi-script .cgi .rb #.rb追加
그런 다음 cgi를 이동하는 디렉토리를 설정합니다.
/etc/apache2/conf-available/serve-cgi-bin.conf
<IfDefine ENABLE_USR_LIB_CGI_BIN>
#ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
#<Directory "/usr/lib/cgi-bin">
ScriptAlias /cgi-bin/ /home/*/
<Directory "/home/*">
AllowOverride None
Options +ExecCGI -MultiViews+SymLinksIfOwnerMatch #追加
Require all granted
</Directory>
</IfDefine>
/home/yaginuuu/public_html/index.rb
#!/usr/bin/ruby
# coding:utf-8
puts "Content-type:text/plain"
puts ""
puts "Hello World."
브라우저에서 확인
bot 만들기
이번은 환경 구축 메인이므로, 정기적으로 중얼거리고 간단한 bot로 하려고 생각합니다.
우선, bot용의 계정 만들기.
그런 다음 앱 관리 페이지 에서 새 응용 프로그램을 만듭니다.
이것은 조사하면 많이 있기 때문에 할애합니다.
Keys and AccessTokens 탭의
삼가합니다.
그런 다음 gem을 설치합니다.
gem install twitter
다음에 이런 느낌의 파일을 준비합니다.
각 키는 yaml에 쓸 때.
config.yml
consumer_key: "YOUR_CONSUMER_KEY"
consumer_secret: "YOUR_CONSUMER_SECRET"
access_token: "YOUR_ACCESS_TOKEN"
access_token_secret: "YOUR_ACCESS_SECRET"
bot.rb
# coding:utf-8
require 'yaml'
require 'twitter'
keys = YAML.load_file(File.expand_path('../config.yml', __FILE__))
client = Twitter::REST::Client.new do |config|
config.consumer_key = keys["consumer_key"]
config.consumer_secret = keys["consumer_secret"]
config.access_token = keys["access_token"]
config.access_token_secret = keys["access_token_secret"]
end
str = %w(おなかすいた 旅行いきたひ 貧乏生活 スノボしたい かに食べ行こう ルームシェア楽しい ruby大好き youtuberになろうかな)
client.update(str.sample)
그런 다음 정기적으로 트윗하기 위해 cron을 움직입니다.
여러가지 방법이 있습니다만, 이번은 이하 요령으로 합니다.
crontab -e
*/30 * * * * /home/yaginuuu/.rbenv/shims/ruby(実行コマンド) /home/yaginuuu/public_html/bot.rb(実行ファイル)
cron을 작성하는 방법에 대해서는 참고문헌을 참조하십시오.
이런 간지 에서 확인할 수 있었습니다.
사이고에게
서버의 환경 구축에서 bot를 움직이는 곳까지 정리해 보았습니다.
참고문헌
Reference
이 문제에 관하여(사쿠라 VPS(ubuntu14.04) 빌려, twitterbot 만들었다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yaginuuu/items/1406807de6d2d52da3f9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)