<commit_before>class WelcomeController < ApplicationController

  def index
    item = params[:item]
    if(item.nil? || item == "") 
      item = "サラダチキン"
    end
    @result_tweets1 = search_tweets(item + "　ファミマ　おいしい") 
    @result_tweets2 = search_tweets(item + "　セブンイレブン　おいしい") 
    @result_tweets3 = search_tweets(item + "　ローソン　おいしい") 
    
    @product = (self.get_product_hash)[item]

  end
  

  # TODO: Twitter関連はmodel内のクラス化するか
  # TODO: 暫定で直書き

  # APIの各種Keyの設定
  @consumconsumer_key  = 'mnDCpUfy63JiypEirQRCgI60W'
  @consumer_secret     = '<KEY>'
  @access_token        = '<KEY>'
  @access_token_secret = '<KEY>'

  def search_tweets_recent(query)
    # Twitterキーワード検索（直近）
    client = Twitter::REST::Client.new(
      consumer_key:        @consumconsumer_key,
      consumer_secret:     @consumer_secret,
      access_token:        @access_token,
      access_token_secret: @access_token_secret,
    )

    since_id = nil
    return client.search(query, count: 3, result_type: "recent", exclude: "retweets", since_id: since_id)
    
  end
  
  def get_product_hash
    # 品目 => コンビニ => 商品
    hash = Hash.new { |h,k| h[k] = {} }
    hash["サラダチキン"]["ファミマ"]= Product_dto.new("ファミマ","チキン","サラダチキン","国産鶏のサラダチキン",258,113,nil)
    hash["サラダチキン"]["セブン"]= Product_dto.new("セブン","チキン","サラダチキン","サラダチキン",213,115,nil)
    hash["サラダチキン"]["ローソン"]= Product_dto.new("ローソン","チキン","サラダチキン","サラダチキン",210,125,nil)
    hash["サラダ"]["ファミマ"]= Product_dto.new("ファミマ","サラダ","サラダ","フレッシュ野菜サラダ(ドレッシング別売り）",163,30,nil)
    hash["サラダ"]["セブン"]= Product_dto.new("セブン","サラダ","サラダ","ミックス野菜サラダ(ドレッシング別売り）",163,"-",nil)
    hash["サラダ"]["ローソン"]= Product_dto.new("ローソン","サラダ","サラダ","コーンサラダ(ドレッシング別売り）",148,49,nil) 
    hash["スープ"]["ファミマ"]= Product_dto.new("ファミマ","スープ","スープ","豚汁",298,106,nil)
    hash["スープ"]["セブン"]= Product_dto.new("セブン","スープ","スープ","生姜香る鶏肉と野菜の和風スープ",298,141,nil)
    hash["スープ"]["ローソン"]= Product_dto.new("ローソン","スープ","スープ","Lクラムチャウダー",298,141,nil) 
    hash["おにぎり"]["ファミマ"]= Product_dto.new("ファミマ","おにぎり","おにぎり","紀州南高梅",110,183,nil)
    hash["おにぎり"]["セブン"]= Product_dto.new("セブン","おにぎり","おにぎり","紀州南高梅",110,164,nil)
    hash["おにぎり"]["ローソン"]= Product_dto.new("ローソン","おにぎり","おにぎり","紀州南高梅",110,164,nil)
    hash["パン"]["セブン"]= Product_dto.new("セブン","パン","パン","チョコチップスナック",100,89,nil)
    hash["パン"]["ローソン"]= Product_dto.new("ローソン","パン","パン","チョコチップスティックパン",100,90,nil)
    hash["パン"]["ファミマ"]= Product_dto.new("ファミマ","パン","パン","チョコチップスナック",100,"-",nil)
    return hash
　end
end
end<commit_msg>#43 Add search_tw_cnt_all<commit_after>class WelcomeController < ApplicationController

  def index
    item = params[:item]
    if(item.nil? || item == "") 
      item = "サラダチキン"
    end
    @result_tweets1 = search_tw_cnt_all(item + "　ファミマ") 
    @result_tweets2 = search_tw_cnt_all(item + "　セブンイレブン") 
    @result_tweets3 = search_tw_cnt_all(item + "　ローソン") 
    
    @product = (self.get_product_hash)[item]

  end
  

  # TODO: Twitter関連はmodel内のクラス化するか
  # TODO: 暫定で直書き

  # APIの各種Keyの設定
  @consumconsumer_key  = 'mnDCpUfy63JiypEirQRCgI60W'
  @consumer_secret     = '<KEY>'
  @access_token        = '<KEY>'
  @access_token_secret = '<KEY>'

  def search_tw_recent(query)
    # Twitterキーワード検索（直近）
    client = Twitter::REST::Client.new(
      consumer_key:        @consumconsumer_key,
      consumer_secret:     @consumer_secret,
      access_token:        @access_token,
      access_token_secret: @access_token_secret,
    )

    return client.search(query, count: 3, result_type: "recent", exclude: "retweets", since_id: nil)
    
  end

  def search_tw_cnt_all(query)
    # Twitterキーワード検索（直近）
    client = Twitter::REST::Client.new(
      consumer_key:        @consumconsumer_key,
      consumer_secret:     @consumer_secret,
      access_token:        @access_token,
      access_token_secret: @access_token_secret,
    )

    # TODO:untilをシステム日付から取得する
    # 初回検索
    result_tweets = client.search(query, count: 100, result_type: "mixed", exclude: "retweets", since_id: nil, until: "2016-10-15")
    tw_cnt += result_tweets.count

    # 2ページ目以降の検索
    while(result_tweets.next_results)
      result_tweets = client.search(result_tweets.next_results)      
      tw_cnt += result_tweets.count
    end

    return tw_cnt    

  end
  
  def get_product_hash
    # 品目 => コンビニ => 商品
    hash = Hash.new { |h,k| h[k] = {} }
    hash["サラダチキン"]["ファミマ"]= Product_dto.new("ファミマ","チキン","サラダチキン","国産鶏のサラダチキン",258,113,nil)
    hash["サラダチキン"]["セブン"]= Product_dto.new("セブン","チキン","サラダチキン","サラダチキン",213,115,nil)
    hash["サラダチキン"]["ローソン"]= Product_dto.new("ローソン","チキン","サラダチキン","サラダチキン",210,125,nil)
    hash["サラダ"]["ファミマ"]= Product_dto.new("ファミマ","サラダ","サラダ","フレッシュ野菜サラダ(ドレッシング別売り）",163,30,nil)
    hash["サラダ"]["セブン"]= Product_dto.new("セブン","サラダ","サラダ","ミックス野菜サラダ(ドレッシング別売り）",163,"-",nil)
    hash["サラダ"]["ローソン"]= Product_dto.new("ローソン","サラダ","サラダ","コーンサラダ(ドレッシング別売り）",148,49,nil) 
    hash["スープ"]["ファミマ"]= Product_dto.new("ファミマ","スープ","スープ","豚汁",298,106,nil)
    hash["スープ"]["セブン"]= Product_dto.new("セブン","スープ","スープ","生姜香る鶏肉と野菜の和風スープ",298,141,nil)
    hash["スープ"]["ローソン"]= Product_dto.new("ローソン","スープ","スープ","Lクラムチャウダー",298,141,nil) 
    hash["おにぎり"]["ファミマ"]= Product_dto.new("ファミマ","おにぎり","おにぎり","紀州南高梅",110,183,nil)
    hash["おにぎり"]["セブン"]= Product_dto.new("セブン","おにぎり","おにぎり","紀州南高梅",110,164,nil)
    hash["おにぎり"]["ローソン"]= Product_dto.new("ローソン","おにぎり","おにぎり","紀州南高梅",110,164,nil)
    hash["パン"]["セブン"]= Product_dto.new("セブン","パン","パン","チョコチップスナック",100,89,nil)
    hash["パン"]["ローソン"]= Product_dto.new("ローソン","パン","パン","チョコチップスティックパン",100,90,nil)
    hash["パン"]["ファミマ"]= Product_dto.new("ファミマ","パン","パン","チョコチップスナック",100,"-",nil)
    return hash
　end
end
{'fraction_non_alphanumeric': 0.20188210227272727, 'fraction_numerical': 0.033735795454545456, 'mean_word_length': 4.837305699481865, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '350345', 'n_tokens_mistral': 2987, 'n_tokens_neox': 2993, 'n_words': 254}