Articles

Redditのための私のFPLボットを改善!



https://github.com/amosbastian/FPLbot

プレイヤーとプレイヤーの比較を追加した後、私は最終的 私はRedditにそれについて投稿し、あなたが見ることができるように、それは非常に好評でした! それは見て素晴らしいです(ほぼ100コメントの日)、多くのことを使用されています。 それはまた、私はいくつかのフィードバックを受けたことを意味し、私はすぐに私が受け取った提案のいくつかを実装することにしました!p>

https://github.com/amosbastian/FPLbot/pull/6
https://github.com/amosbastian/FPLbot/pull/7
https://github.com/amosbastian/FPLbot/pull/9

https://www.reddit.com/user/FantasyPL_bot

プレイヤー対プレイヤーテーブルの変更

プレイヤー対プレイヤーテーブルは、以前は非常にモバイルフレンドリーではありませんでしたが、誰かがすぐに指摘しました。 彼らは、各プレイヤーのために別々のテーブルを作成し、単にそれらをお互いの上に積み重ねることを提案したので、それは私がしたことです。 これにより、将来的には2人以上のプレイヤーの比較も可能になりますが、これも実装する可能性があります。

テーブルを改善します!



ゴールキーパーのための改善されたテーブル

私はまた、一般的にテーブルにいくつかの他の改善を行いました。 一つの問題は、表には期待されるゴールやアシストのようなものだけが含まれていたので、ゴールキーパーを比較することは無意味であったということでした。 これを解決するために、私は彼らの期待される目標、彼らのセーブなどを含むテーブルを作成することにしました。



結果を保存する

プレイヤーの期待ゴールはUnderstatに関するプレイヤーの情報に含まれていないので、私はチーム自体からこれを取得しなければならなかった。 これを行うために、チームのすべての結果をデータベースに保存する別の関数を作成し、それを使用してデータを取得しました。 幸いにも、これは私自身のUnderstatパッケージを使用して行うのは非常に簡単でした!



ゴールキーパーテーブルを作成する

私がしたもう一つのことは、ディフェンダーのテーブルに対期待ゴールを追加し、プレイヤーが実際にゲーム中に得点したポイント(ボーナスポイントを含む)も追加することでした。 これを達成するために、私がしなければならなかった最初の事は、選手を比較するときに使用される試合がプレミアリーグでプレーされたものだけであ 最後に、私は何とかポイントを取得し、これをUnderstatからのそれぞれのデータに一致させる必要がありました。 幸いなことに、FPL APIに含まれているプレイヤーの履歴を使用してポイントを取得することができ、Understatのすべてのフィクスチャには独自のIDがあるため、プレ私が見つけたテーブルを作成するためのPythonパッケージであるtabulateを使用するように切り替えたことに気づいたかもしれません。 それは私のユースケースではかなりうまく機能し、コードも少しきれいにしました。私はまた、ボットにいくつかの他のQoLの変更を加えましたが、この投稿はすでにかなり長くなっています。 あなたはそれについての詳細を読みたい場合は、私が作成したRedditのスレッドをチェックアウトすることができます。

ロードマップ

私はお互いに2人以上のプレイヤーを比較する機能を追加するかもしれませんが、見る必要があります。 うまくいけば、同様にいくつかのより多くの提案を受け取

Usage&installation

FPLbotはMongoDBを使用してプレーヤーをデータベースに格納するため、MongoDBをインストールする必要があります。 それ以外にも、fantasy Premier LeagueのAPIから情報を取得するためにfplを使用するため、Python3.6以降が必要です。p>

git clone :amosbastian/FPLbot.gitcd FPLbotpip install -r requirements.txt



インストールしたら、上記のようなファイルを作成する必要がありますconfig.json例ですが、正しい値を使用しています。 これを行ったら、いつでもボットを実行するcronジョブをスケジュールすることができます!

貢献



私はFPL関連のものをプログラミングに興味のある人のためのDiscordサーバーを作成したので、あなたが助けに興味がある、または単に詳細を知りたい場合は、参加することを躊躇しないでください! それ以外の場合は、単にGitHubで課題を作成することができます。