SlackのエクスポートデータをExcelに入れる方法

Slackのフリープランが直近の90日分しか表示できなくなった。過去のSlackのデータが見れなくなると困るということになり、データのエクスポートをして、Excelで見れるようにした。

OSSのPythonのツールを使うので、Pythonを扱える環境が必要。めんどくさいので、Windows10のWSL2(Ubuntu)上で実行した。

1. Slackからデータをエクスポートする

2. エクスポートしたデータはZIP形式なので、展開する

3. Pythonのデータ変換ツールをGithubから落として、展開する(実行ファイルはPythonのソース1つだけなので簡単)。このツールには本当に感謝。
https://github.com/becky3/json_to_csv_for_slack

4. 変換ツールを実行して、チャネルごとのCSVデータにする。
一回のツール実行で、すべてのチャネルがCSVデータに変換された。

python converter.py /mnt/c/展開したエクスポートデータのフォルダ

実行するときは、展開したエクスポートデータのフォルダをフルパスで記載する。CSVファイルの出力先は、コマンド実行のあとに表示されている。

5. Excelを空のブックで開く。

6. メニューの「データ」から「テキストまたはCSVから」を選択する。直接、CSVファイルを開くと、文字化けするので、「データ」から読み込ませる。

7. 4番で作成したCSVデータを指定して、開く。これでチャネルごとのシートになる。

8. CSVファイルの数だけCSVの読み込みを行う。

9. 最後はExcelのファイルを保存する。

Excelにしてしまえば、あとは検索でも加工でも、自由にできる。

おまけ。試行錯誤して、失敗した/あきらめた方法。

・ExcelのPowerQueryでJSONファイルを読み込ませる。
→これは、1つ1つファイルを指定していけば、読み込みできた。
 ただ、フォルダを指定して、結合して読み込ませると、JSONの形式でエラーになり、取り込めず断念。

・PowershellでCSVファイルに加工する
→結構、めんどくさい。時間かかりそうなので、やめた。

・JSONをSQL Serverに取り込んでから、ExcelやAccessで活用
→JSONファイルをSELECT文で操作はできるが、DBに取り込むところがめんどくさい感じ。
 先にテーブル設計して、、、ならばいけそうだったが、時間がかかるのでやめた。

・Google Spreadsheetに取り込む
→GAS製の有料、無料のツールがあった。
 GASで自作も考えたが、なんかめんどい感じだったので諦めた。

・別のツールにエクスポートデータを取り込み
→そのツールを管理する手間がある。
 お手軽ではない。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする