[RUBY] Volume 1 de vouloir créer votre bot SCANDAL LINE préféré

Le bot que vous voulez créer

Un bot qui envoie au hasard des MV SCANDAL à une heure fixe chaque jour

Concept dans mon esprit pour cela (créé avec des rails)

  1. Commencez par créer quelque chose qui bouge sur le WEB
  2. Faites-en un LINEbot
  3. Ajoutez des fonctions à partir de là (par exemple, si vous envoyez avec ACIDMAN et LINE, les chansons ACIDMAN seront renvoyées au hasard)

Ce que j'ai pu faire pour le moment

  1. Commencez par créer quelque chose qui bouge sur le WEB

Articles référencés

J'ai fait référence à la référence de l'API YouTube Data basée sur l'article Qiita.

Qiita https://qiita.com/sakakinn/items/46c0d4945e4646f346f6

YouTube Data API https://developers.google.com/youtube/v3/docs?hl=ja

code

index.html.erb


<% number = 0 %>
<% ran = rand(1..11) %>
<% @youtube_data.items.each do |item| %>
  <% number = number + 1 %>
  <% if number == ran %>
   <% snippet = item.snippet %>
   <p><%= snippet.title %></p>
   <p><%= snippet.published_at %><%= snippet.channel_title %></p>
   <div><iframe width="560" height="315" src="https://www.youtube.com/embed/<%= item.id.video_id %>" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>
  <% end %>
<% end %>

youtube_controller.rb


class YoutubeController < ApplicationController
  def find_videos(keyword)
    service = Google::Apis::YoutubeV3::YouTubeService.new
    service.key = ENV["YOUTUBEKEY"]

    next_page_token = nil
    opt = {
      q: keyword,
      type: 'video',
      channel_id: 'UCSNX8VGaawLFG_bAZuMyQ3Q',
      max_results: 11,
      order: :date,
      page_token: next_page_token
    }
    service.list_searches(:snippet, opt)
  end

  def index
    @youtube_data = find_videos('SCANDAL')
  end
end

Résultat de sortie ↓ https://twitter.com/pompom06yutoz/status/1273869183491559425?s=21

Les défis que nous connaissons maintenant

  1. Étant donné que j'accède à 11 données dans View, je souhaite les éliminer et récupérer de manière aléatoire une seule donnée du canal. (Aidez-moi ~ ww)
  2. S'il est laissé tel quel, le canal sera fixé (une fois à travers)

Que faire ensuite

Pour le moment, essayez de l'utiliser comme un bot LINE et réfléchissez-y lorsqu'un problème survient.

finalement

Cela fait environ 4 mois que j'ai commencé à apprendre la programmation, et je l'apprécie tellement. Si vous avez de bonnes alternatives, n'hésitez pas à commenter. Aussi, si vous aimez SCANDAL, faites-le. à suivre

Recommended Posts

Volume 1 de vouloir créer votre bot SCANDAL LINE préféré
Facile à créer LINE BOT avec Java Servlet
Créez votre propre clavier QMK dans Docker. Volume unique à Windows
Facile à créer Slack Bot avec Java
Comment créer un robot Discord (Java)
[LINE @] J'ai essayé de créer un BOT de conversion de calendrier occidental de calendrier japonais [API de messagerie]