2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

discordに書かれたメモをPythonを用いてMarkdown記法に変換する

Last updated at Posted at 2019-06-15

初投稿。

#目的
スマブラプレイヤーえつじ(https://twitter.com/yk_Etsuji)
Youtubeメンバー向けdiscordに残したメモの整理。

既に有志がMarkdownで綺麗にまとめてくれたものが存在するため、
今回のプログラムの目的はまとめ作業の半自動化を目標とする。

#Markdown記法とは
文章を記述するための記法の一つ。
htmlに変換可能で、何より分かりやすく書きやすい。

#処理の流れ
discordのログをtxtファイルにコピー&ペースト

読み込み[python]

メッセージの日付情報を取得する。[python]

3種類のデータに分類[python]

分類に合わせてデータを格納[python]

日付順にソート[python]

Markdown記法で出力[python]

##dicsordのログをtxtファイルにコピー&ペースト
そのままコピー&ペーストするだけ。
ex.discordのログ
discordsample.PNG

ここからメッセージを日時ごとコピー&ペーストする。
ex.txtファイル
textsample.PNG

##読み込み[python]
そのまま読み込み。

##メッセージの日付情報を取得する。[python]
discordのメッセージは、

[投稿者の名前][日時]
[メッセージの内容]

という形で表示される。

この特徴を利用し、投稿者の名前(この場合はえつじ)が含まれる行の情報は「日付情報」であるとして、処理を行う。

具体的には、[日時]のみを抜き出し日付型に格納する。

##3種類のデータに分類[python]
メモの特徴として、
日付情報の後には分類のための情報が載ることが多い。

そのため、その行についての情報を調べ、
0 .. スマブラSP全般のメモ
1 .. 使用キャラのメモ
2 .. キャラ対策メモ       に分類する。

具体的には、文章に

「ルキナ、マルス、ディディー」が含まれる場合、
⇒使用キャラのメモ

「それ以外のキャラクターの名前」が含まれる場合、
⇒キャラ対策メモ

いずれにも該当しない場合、
⇒スマブラSP全般のメモ

であるとし、分類を行う。

##分類に合わせてデータを格納[python]
各データはリストdataに格納する。

data[0] ... 日付情報(datetime)
data[1] ... 分類情報(int)
data[2~] ... 内容情報(String)

使用キャラのメモ、キャラ対策メモの場合は
data[2]には該当のキャラクターの名前が入る。

作成したリストdataは、
さらに大きなリストdata_listに格納する。

##日付順にソート[python]
日付情報を基準に、バブルソートを用いて、data_list内のソートを行う。

##Markdown記法で出力[python]
データをMarkdown記法でtxtファイルに出力する。

#参考文献、謝辞
日付データを利用するにあたって、
こちらの記事(https://qiita.com/motoki1990/items/8275dbe02d5fd5fa6d2d) を参考にさせていただきました。

何より、メンバー向け情報を整理していただいてる有志の方、ありがとうございます。

最後になりましたが、えつじさん、いつも楽しい配信ありがとう。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?