みなさん?PvPはやっていますか?唐突ですがEVE Onlineには
というウルトラスーパーミラクル便利なサービスがあります。
しかし
普段は英語クライアントを使っていないので敬遠してる方は一定数いるんじゃないんでしょうか?(もしかしたらそんなカプセラはいないかもしれない)
そこで!な、なななんと!!!
中国語で出力できるようなスクリプトを書きました!
普段は中国語クライアントで遊んでる方もこれを機会にzKillboardで遊んでみてくてください!(暗黒微笑)
※ちなみに既に公式からのサポートが終了している日本語という未知の言語ですが、サポートが切れる前の翻訳データなら対応しています(小声)
非エンジニアの方でも遊べるようにElectronを使ってGUIアプリケーションにして配布する形にしようと思ったんですが…………
・
・
・
・
・
・
・
・
・
・
・
・
なんか飽きてきた
ので、とりま今の進捗の記事を書いてトンズラをしようという感じです。
ソースコードを公開しているので興味がある人代わりにやってください!お願いします何でもしますから!←
プルリクエストお待ちしております(にっこり)
まぁ茶番もこんな感じにしてスクリプトの説明をガバい感じでやっていきます。
zKillboardの使い方
Elite PvPerを目指すためのzKillboardの使い方
適当にここらへんを読んでみてください(適当)
とりあえず動かす
Python 3.6.7で書いています。Pythonの環境構築とかは適当にググってください。
Githubのプロジェクトページの右上からDownload ZIPか git clone をします。
適当な作業フォルダで解凍してターミナル(コマンドプロンプト)を起動して作業フォルダまで移動します。
pip install -r requirements.txt
python zkillboard2excel.py https://zkillboard.com/character/96069434/
こんな感じに zkillboard2excel.py の後にzKillboardのURLを入力するとexport.xlsxというExcel形式のファイルが出力されます。
もちろんGoogleスプレッドシートでも読み込めます。
オプションについて
オプション名 | 説明 |
---|---|
--lang | 使用する言語(de, en, fr, ja, ru, zh) |
--filepath | デスクトップ上に作られるファイル名(パス) |
--format | 出力するファイル形式(excel or csv) |
--clear-cache | キャッシュを削除するか |
--update-sde | SDEのアップデートをチェックするか |
--page | 読み込む最初のページ |
--limit | 何ページ読み込むか(1ページは200件) |
--lang
今のところCCPがサポートしている(既にサポートしていない言語もありますが)
- 英語(en)
- ドイツ語(de)
- フランス語(fr)
- ロシア語(ru)
- 中国語(zh)
- 日本語(?) - maybe ja
これらの言語で出力できます。
デフォルト(何も指定していない場合)は '--lang=en'
--filepath
保存するファイル名を指定。パスを指定する感じなので別の場所のフォルダも指定できます。
デフォルトは 'export'
--format
出力するファイル形式を指定。
今のところは 'excel' or 'csv' を指定できます。
ExcelとCSVの違いは、Excelの方は色が付いていたり、キャラクターや船の項目にzKillboardのリンクが貼ってたりします。
CSVは情報が少ない代わりにExcelより速いので大量のキルメールを読み込む時はこっちがいいかもです。
デフォルトは '--format=excel'
--clear-cache
ESIから読み込んできたキャラクター名などの情報はキャッシュしていますが、それを消すかどうかです。
'--clear-cache=true' をすればキャッシュが消えます。
今はJSONに全部ぶっこんで保存してる感じなので1億件ぐらいキルメールを読み込むと多分動かないと思います。
数十万件ぐらいのキルメールならキャッシュを消す必要はないと思います(自分の端末のスペックと空き容量に相談してください)
そのうちSQLiteとかを導入するといいかもです(誰かやってください)
デフォルトは '--clear-cache=false'
--update-sde
船やユニバースが新しく実装された時はSTATIC DATA EXPORT (SDE)をアップデートしないといけません。
'--update-sde=true' を指定すればSDEの新しいバージョンがあった時は自動的にアップデートします。
デフォルトは '--update-sde=false'
--page
何ページ目から読み込むか最初のページ数を指定します。
デフォルトは '--page=1'
--limit
最初のページ(--page)から何ページ分読み込むかを指定します
1ページにキルメールは200件です。
例えば --page=3 --limit=4 とすれば 3, 4, 5, 6 の4ページ分(800件)を読み込みます
デフォルトは '--limit=1'
サンプル
<url>はzKillboardのキルメールの一覧が表示されているページならどこでも大丈夫です。
python zkillboard2excel.py <url> --lang=ru --file-path=test1
<url>に表示されるキルメールを読み込んで1ページ目から1ページ分をロシア語で取得し 'test1.xlsx' というファイル名のExcel形式を出力
python zkillboard2excel.py <url> --lang=zh --file-path=test2 --format=csv
<url>に表示されるキルメールを読み込んで1ページ目から1ページ分を中国語で取得し 'test2.csv' というファイル名のCSV形式を出力
python zkillboard2excel.py <url> --lang=de --format=csv --page=2
<url>に表示されるキルメールを読み込んで2ページ目から1ページ分をドイツ語で取得しCSV形式で出力
python zkillboard2excel.py <url> --lang=ja --page=2 --limit=3
<url>に表示されるキルメールを読み込んで2ページ目から3ページ分を日本語で取得しExcel形式で出力
python zkillboard2excel.py <url> --update-sde=true --clear-cache=true
STATIC DATA EXPORT (SDE)をチェックした後に<url>に表示されるキルメールを読み込んで1ページ目から1ページ分を英語で取得しExcel形式で出力し、最後に今までESIから取得したキャッシュデータを消す
おわりに
お問い合わせや質問など
Discord: EVE Japanese IT
Twitter: @evekatsu
IT系に興味がある人はぜひDiscordの方に遊びにきてみてください。
また、面白いアイデアも随時募集しています!
Twitterの方はフォロー外にDMを解放しています。