代々木で働く超新米エンジニアの足跡

代々木で働くエンジニアです。超新米です。

Ruby

ActiveRecord データベース デーブルの存在 一覧 Ruby

テーブルの存在の確認 puts ActiveRecord::Base.connection.table_exists? 'DB名' 参考:ActiveRecordでTableの存在をチェックする | hrendoh's memo テーブルの一覧表示 ActiveRecord::Base.connection.tables 参考:ActiveRecord を使って好きなデータベース…

緯度経度から住所 geocoder

緯度経度から住所を割り出す geocoderのインストール gem install geocoder require 'geocoder' #日本語に設定 Geocoder.configure(:language => :ja) #住所取得 puts Geocoder.address("緯度,経度") 緯度経度のところにそれぞれの長ったらしい数字を書く 参…

同じ単語を数える 変数で正規表現

テキストファイルを読み取って同じ単語をカウントする count = Hash.new(0) filename = ARGV[0] file = open(filename) while anything = file.gets something = anything.split something.each do |things| count[things] += 1 end end file.close ## 結果…

length nil empty 曜日を日本語表示 git request pull marge

length,sizeが使えない datetime型だと、length,sizeが使えなかった(NoMethodErrorになる)ので オブジェクト.where(date:Date.today,).each do |box| if !(box["Time"].length == 0) get.push("box["Time"]}") end end これで、データベース側のTimeのカラム…

<Ruby>正規表現で都道府県を一致させる スクレイピング ログ 不要な空白削除strip

都道府県を一致させる 今回は都道府県の前に空白があるのでこうした。 addr = "東京都" addr.match(/\S{2,3}[都道府県]/).to_s #=>東京都 /Sは、空白を除く {2,3}は2~3文字 参考:【Ruby】住所から都道府県を正規表現で取り出す【正規表現】 - Qiitaログ ログ…

新規ファイルを開いて書き込む ファイルを2つ開いて書き込み モード

新規ファイルを開いて書き込む file_name = "新しく作りたいファイル名.txt" File.open(file_name,"w"){|同じもの| #wは書き込みモード 同じもの.puts "書き込みたいこと" } ファイルを2つ開いて書き込み File.open('outfile.log','w'){|outfile| #outfile.l…

Ruby 例外処理 rescue

例外処理 begin rescue begin <例外が起こる可能性のある処理> rescue => <例外オブジェクトが代入される変数> <例外が起こった場合の処理> end どうしようもないエラーの時に使った 使いすぎたり、広い範囲でつかうとどこがエラーかわからなくなる参…

count uniq 正規表現 桁数範囲 inject map compact

配列関係 count 配列名.count 配列の要素の数をカウント参考:count (Array) - Rubyリファレンス 配列内の重複する要素を取り出す a = [1, 2, 3, 4, 5, 6, 5, 4] a.inject(Hash.new(0)){|h, key| h[key] += 1; h}.map {|k,v| k if v >= 2}.compact #=> [4, 5]…

次のページもスクレイピング sleep children 画像の個数

次のページもスクレイピング #省略 loop do #省略 unless doc.css('秘密').empty? url = doc.css('秘密').attribute('href').value p "----------" sleep(10) else break end end loop とunlessのブロックをくっつけて次のページまでスクレイピングできた参…

sinatra じゃんけん 変数 erb ruby

sinatraでわかったこと ファイルの読み込み #app.erb post '/choki' do erb :choki end これは、choki.erbファイルの読み込み erb : chokiのところをrbにしてもよみこめなかった。 URL require 'sinatra' get '/top' do "Hello" end get と do の間、 /topは…

twitterbot assert jsonファイル sinatraインストール

twitterbot作成中にでたエラー `to_s': wrong number of arguments (2 for 0) (ArgumentError) 引数の数がおかしいとでる。 実際は0だが、引数を2つわたしている。参考:Rubyist Magazine - Ruby ビギナーのための CGI 入門 【第 3 回】 ページ 2 asser_equa…

twitterbot作成のメモ gitでpushできないとき

twitterbot作成のメモ bot.timeline.userstream do |status| twitter_id = status.user.screen_name #アカウントID name = status.user.name #アカウント名 contents = status.text #つぶやきの内容 status_id = status.id #ツイート自体のID(つぶやきごとに…

テストコード インテンド クラス 正規表現 require

テストコードをやった。・インストール gem install test-unit 参考 : Ruby - Test::Unitでテストを書く - Qiita ・使い方 テストはファイルを分けておこなう テストしたい部分があるファイルをrequire_relative で読み込むclass Practice def self.greetin…

twitterbotを作る(じゃんけんプログラム)

ぐー、ちょき、ぱーのいずれかをリプライしたらランダムに何かを返し結果を報告するじゃんけんプログラムをつくったファイルを3つ用意した。 APIデータファイル、クラスファイル、実行ファイルAPIのファイルは、アカウント情報のようなものをかいてるだけな…

twitterbotを作る(rubyを介してのツイート)

twitterbotwをつくるAPI登録やインストールもろもろは以下を参考にした。初心者歓迎詐欺被害者の会: RubyでTwitter Botをつくる とりあえず、rubyを介してツイートしたい時はこれ require 'twitter' require 'pp' client = Twitter::REST::Client.new do |co…

スクレイピングまとめ

スクレイピング 概要 Web上の特定のデータを抽出すること 言語 Ruby require Nokogiri open-uri 方法 あるサイトに複数の記事があり、その記事のタイトル、urlをスクレイピングしたいとする。 はじめに必要なことは、そのタイトルとurlのセレクタを知ること…

時間のフォーマット

時間のフォーマットを変える時の参考 time = Time.now # Thu Dec 24 00:00:00 +0900 2011 time.strftime('%Y年%m月%d日 %H:%M:%S') # 2011年12月24日 00:00:00.to_time だとタイムゾーンが表示される