Ruby
Ruby スクリプトで Slack の WebHooks URI を叩いてスクリプトの実行結果などをポストさせたかった時に調べました。 Ruby Gems には WebHooks を叩くための gems がいくつかあります。例えば slcak-notifier などなど。 今回は本当にスクリプトから Slack に…
ls コマンドのタイプミスとして sl とタイプしてしまった時に機関車の AA が流れるのは有名なジョークコマンドだと思います。 Twitter でよく流れる 誰もお前を愛さない を表示するものを作ってみました。 sudo でやってるのを見て書いたコマンドですが、き…
一部で被ブロック芸人として知られ、[被ブロック数n件達成イベント]などが開催されているろき氏、そんな彼をブロックするためのプラグインが mikutterにあるのかと作者の人に尋ねてみましたが、どうやら無いようだったので作ってみました。 @toshi_a mikutte…
Ruby で SpatiaLite を作成します。 gem で sqlite3 を入れるのと、システムに SpatiaLite のパッケージを入れるのを忘れずに。 #!/usr/bin/env ruby require 'sqlite3' sqlitefile = "test.sqlite" db = SQLite3::Database.new(sqlitefile) db.enable_load_…
Ruby で Twitter bot を作ろうかなとしているところで、とりあえずふぁぼとリツイートに反応して、ふぁぼやリツイートした人に「ありがとう」を返す機能だけを作りました。 作ったのは次のような環境です。 debian 8.2 Ruby 2.2.2p95 Ruby Gems Twitter Ruby…
GEOFABRIK の日本リージョンから japan-latest.osm.pbf をダウンロードして 埼玉県の部分だけを切り抜くスクリプトを作成し、毎朝実行しています。 GEOFABRIK で日本リージョンが地域ごとにダウンロードできるようになったので関東リージョンから kanto-late…
24時間でどれくらい編集したかをツイートします。 ツイートされるのは変更セットの数、ノードの数、ウェイの数の3つです。 最初はディベロッパー用 API の URL に自分の UID だの チェンジセットだの取りに行っていたので何も返ってこなかったというアホなこ…
QGIS で操作すればできますが、JSON の扱いに慣れてみるのも一興と思って書いてみました。 ちなみに、世界測地2000の平面直角座標以外は計算できないので弾いています。 任意座標でも計算できますが、それそもそも GeoJSON としてどうよって感じなので扱わな…
現在住んでいる場所は大きめの川が近くにあるところで、シミュレーションによっては洪水で5m近くの浸水になる可能性が示唆されているところです。 幸い引っ越してきてからはそういった水害はありませんが、一応河川の水量がどんな風に変化しているのか見てみ…
node.js のパッケージとして csv2geojson が公開されています。 コマンドイッパツで CSV や TSV を GeoJSON にしてくれる優れものです。 $ npm install -g csv2geojson $ csv2geojson geodata.csv > geodata.geojson 非常に便利なのですが、変換できる位置情…
測量データ共通フォーマット SIMA ファイル(CSV 版)を PC-MAPPING に読み込んでシェープファイルに吐き出して QGIS で表示するのが面倒過ぎたので GeoJSON に変換する Ruby スクリプトを書き始めました。 コマンドから変換してやれば PC-MAPPING での GUI 操…
某毒舌な bot を作成してみようと思い、 ConoHa VPS で作業をしました。 Docker のコンテナに Ruby で書いたスクリプトから PostgreSQL に入れた文章をツイートさせます。 使ったのは gem くらいでフレームワーク的なものは使ってないです。 ツイートさせた…
前回失敗したOpenCVとruby-opencvのインストールが無事にできました。おとなしく最新版をビルドしています。 ビルドは簡単で、Linux で OpenCV バージョン 2.4.9 のダウンロードとビルドとインストールとテスト実行にあるシェルスクリプトを実行するだけでイ…
iPhone5で写真を撮った後にDropboxアプリを動かすと撮影した写真をCamera Uploadsフォルダにアップロードしてくれます。 ロックしたまま写真を撮影できるのでパシパシ撮ってたのですが、無課金Dropboxの容量を圧迫するようになってきたのでデータをファイル…
会社のFreeBSD 8.0-RELEASE-p2で動いているファイルサーバでportversion -vを実行したところでエラーが出た。 /usr/local/lib/ruby/site_ruby/1.8/portsdb.rb:119:in `fill': MOVED file format error (PortsDB::MOVEDError) from /usr/local/lib/ruby/site_…
前回のエントリで書いたものですが、誤差が発生する原因がやっとわかりました。 例えば p 1 / 3 の結果が0になってしまいます。 「/」メソッドに1と3が代入される際、整数クラスとして扱われるために答えも0.3333…から整数部分の「0」だけが表示されてしまう…
現在Windows Server上でIIS+.Net(VisualBasic)で作ったWebサイト上での住所検索機能をFreeBSD(またはLinux)+Apache+MySQL+Rubyで実現するためのテスト。なぜならVisualBasicはともかくWindows Server 2003 R2 Standardは開発ライセンスのものなので実運用に…
前回書いたスクリプトを使って毎日(更新しないのに毎日取ってる)取得しているのでそれなりに早いペースで保存データが増えていきます。 とりあえず1週間分を保存しておけばいいだろうということで、1週間前を基準日としてそれ以前のファイルを削除するように…
前に方書いたスクリプトは無事に動作しているようです。 毎朝4:00にデータを取得して保存中。 あんまり古い状態を残しておいても仕方ないので、古いログは勝手に削除してくれるように書き換えた方がいいですね。
サーバで定期的にスクリプトを動かしてやろうとMediaTombが動いてるFreeBSDでRubyの設定をしてみました。 # pkg_info | grep ruby でRubyがインストールされているのを確認。ただしruby-gemsとruby-iconvが入ってなかったのでその辺をインストールしました。…
はてなダイアリーの出たバックアップを取ろうとして、Rubyスクリプトを書いていたところmechanizeが必要となりgemと格闘することになりました。gemでmechanizeをインストールするとエラーが出てちゃんとインストールできません。 どうもgemのバージョンが悪…
平面直角座標で書かれた図面を緯度経度で表現する図面の上に配置するために平面直角座標と緯度経度を相互変換するためのRubyでスクリプトを書いてみました。Rubyは数行のスクリプトは書いたことがありましたが、この長さのものを書いたのは初めてです。 いく…