動かざることバグの如し

猫ゆえに。。。

ruby

rubyでTwitterに画像付きツイートを投稿する

一番有名なtwitter gemを利用してRubyでTwitterに画像つきのツイートを投稿するメモ 色んな人がすでに書いているが、どうもやり方が変わってるらしくてできなかった まずはGemfileにgem "twitter"に追加して以下 require 'twitter' tw = Twitter::REST::Clie…

RubyでRSS取得するときにUser-Agentを偽装する

環境 ruby 2.3 多分どのバージョンでも動く 相当古くなければ TwilogのRSSをRubyでしようとしたら403が返って取得できない。ブラウザだとちゃんと表示できてるあたり、どうもユーザーエージェントで弾いてるっぽい。 ってことで偽装すればすんなり取得で…

Capistrano+Railsでassets:precompileが実行されない件

発端 普段はRailsのデプロイにcapistrano3を使ってるんだが、デプロイしてもCSSとJSが読み込まれずに404に。。 よく見るとassets/imagesに入れた画像も404に。ローカル環境だともちろん正しく表示される。でも、Capistranoのログをよく見ると、そもそもasset…

Mechanizeでページを取得するたびにランダムなプロキシサーバーを設定

スクレイピングに便利なMechanize だけどアクセスしまくるとBANされてしまうのでプロキシを使うことで回避しようという話 環境 ruby 2.3 Mechanize プロキシサーバー2台以上 同じポートでアクセスできるようにしてあると便利である やりかた モンキーパッチ…

ActionCable使ったRailsのnginx設定

ActionCableはwebsocketを使うので通常のRailsと設定が違う。たくさんコケる要素があるのでそのメモをまとめた。 環境 Rails 5.0.3 puma Redisは今回使わない nginxの設定 upstream puma-realtime { server unix:///var/www/realtime/shared/tmp/sockets/pum…

gem install eventmachine時に「'openssl/ssl.h' file not found」とエラー

環境 Mac El Capitan Gemfileに 症状 gem install eventmachine ができない gem "eventmachine" でbundle instrallすると Using ref 1.0.5 Using sass 3.2.14 Using simple_oauth 0.3.0 Using elasticsearch-api 1.0.1 Using thread_safe 0.2.0 Using airbra…

【Mac】Rails consoleで日本語が入力できない問題

症状 rails cでRailsのコンソールが開くけどここで日本語が入力できない(文字化けする) これはRailsにかぎらずpryやirbでも同様な文字化けが発生する 原因 入力された文字をirb側に渡すライブラリがデフォルトだと「libedit」というやつだが、コイツが日本…

【Ruby】bundleコマンド叩くとbad interpreter: No such file or directoryとエラーになる件

発端 rubyで開発する際にbundleコマンド使うじゃないですか、bundle installとかにつかうアレ。 あれをRaspberry Piで使おうとしたら pi@raspberrypi:~ $ /bin/bash -lc 'cd /home/pi/hoge && bundle exec ruby save.rb' /bin/bash: /usr/bin/bundle: /usr/b…

Raspberry Pi用RubyをUbuntuでクロスコンパイルしたい人生だった

依存ライブラリのインストール 公式ドキュメントを参考にするといいかも このライブラリたちはクロスコンパイル関係なしにRubyのビルドに必要 sudo apt-get update sudo apt-get install -y git autoconf bison build-essential libssl-dev libyaml-dev libr…

【Ruby】指定文字の出現回数をカウントしたい

例えば以下の文章があったとする。 当職の弟を当職が殺したなどという当職のアイデンティティを否定する投稿が多数なされておりました。 当職の弟は厚史という名前でした。一つ違いの弟でした。喧嘩もしましたが、私にとってのかけがいのない弟でした。 弟は…

Rubyで行列の回転を行いたい

ぶっちゃけまとめ def display mat mat.each do |row| puts row.join(' ') end puts end matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] display matrix display matrix.reverse.transpose #=> 右回転 display matrix.transpose.reverse #=> 左回転 display ma…

RubyのHTTPクライアント「Faraday」でjsonをGET

きほん res = Faraday.new(url: "http://192.168.1.250:8888").get "/cli" , { :val => 'key' } if res.status === 200 json = JSON.parse res.body "#{json["name"]}" end 簡略化すると以下 res = Faraday.get 'http://192.168.1.250:8888/cli' , { :val =>…

Wikipediaから日本全国の駅一覧を取得するスクリプト

駅データ.jpにて全国の駅データをcsvで無料ダウンロードできるが、残念なことに駅名の読み方(ふりがな)は有料版でしか付いてこない 4000円払うのもうーんって感じなので我らのWikipediaから抽出できないかやってみた。 使用言語はRuby。一覧はこのぺーじか…