Skip to content

yosh1ba/kamitter

Repository files navigation

Twitter自動運用サービス

LaravelとVue.jsの理解を深めるためにTwitterAPIを利用した自動運用サービスを開発しました。 TwitterAPIの仕様を考慮し、可能な限りAPI制限に引っかからないように設計しています。 Laravel側は主にAPIサーバとして機能させ、Vue.js側からURLを叩くことで各種処理を行うようにしています。

使用言語

  • HTML
  • CSS
    • プリプロセッサ:sass(scss記法を使用)
    • ビルドツール:webpack(+babel)
  • javascript(Vue.js)
  • PHP(Laravel)

データベース

  • MySQL

開発環境

  • PHPStorm

主な機能

  • ユーザ登録
  • ログイン
  • ログアウト
  • 退会
  • パスワード変更
  • パスワードリマインダー
  • Twitterアカウント認証
  • Twitterアカウント連携(1サービスアカウントごとに10個のTwitterアカウントを紐付け可能)
  • 自動フォロー機能
  • フォロワーサーチ機能
  • フォロワーサーチキーワード機能
  • 自動アンフォロー機能
  • 自動いいね機能
  • いいねキーワード機能
  • 予約ツイート機能

機能詳細

自動フォロー機能

  • 指定のTwitterアカウントにおいて「フォロワーサーチ機能」で作られた「フォロワーターゲットリスト」を元にフォローしていく
  • フォローしたTwitterアカウントは「フォロー済みリスト」に保存する

フォロワーサーチ機能

  • 自動フォローが開始された最初に実行される
  • 事前に登録した「ターゲットアカウント」の上から順に、そのTwitterアカウントのフォロワーの中で「フォロワーサーチキーワードリスト」に合致するツイッターアカウントを抽出する
  • 抽出したTwitterアカウントは「フォロワーターゲットリスト」に保存する
  • 「自動アンフォローリスト」に含まれるTwitterアカウントは含めない
  • 「フォロー済リスト」の中で、フォローから30日以内のアカウントは含めない
  • 対象は日本人のみとする(日本語の50音がプロフィールに含まれているかで判断)

フォロワーサーチキーワード機能

  • キーワードをAND,OR,NOTで指定する

自動アンフォロー機能

  • フォローした日時から7日経過してもフォロー返しがないTwitterアカウントをアンフォロー
  • アンフォローしたTwitterアカウントを「アンフォローリスト」に追加する

いいねキーワード機能

  • キーワードをAND,OR,NOTで指定する

自動いいね機能

  • 「いいねキーワード登録機能」で登録されたキーワードに合致するツイートにいいねをする

予約ツイート機能

  • 予約日を指定し、ツイートを登録しておくと自動で指定時刻にツイートを行う
  • 予約を複数登録可能
  • サーバのcronで実装

開発工数

合計 300H

開発してみての感想

開発にあたっては、MVCフレームワークを意識し、FATコントローラにならないよう気をつけました。

ユーザー登録周りの一部の希望はLaravel標準のクラスを利用したため、どのようにオーバーライドするかを考えるにあたり、フレームワークがどういう実装をしているかを学ぶことができました。 フレームワーク自体は便利ではあるものの、中身もある程度理解しておかなければなにかトラブルがあった際の対応に手を焼くだろうなと感じました。 よく言われることではありますが、実際に自分で開発してみて身を持って体感することができたのは良い経験でした。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published