kabuステーション APIの開発環境をWSL2上にせっかく作ったのに、 400 Bad Gatewayとなってアクセス出来ないのでガチャガチャやってみたが、やっぱりkabuステーション側に制限がかかっていた
(※Windowsに直接Python入れたら即実行出来たので判明。 host.docker.internalとか network_mode = hostとかやってみたけどダメでした)
【要望】localhost以外からのAPIアクセスについて · Issue #34 · kabucom/kabusapi
このままだと、なんのためにauカブコムの証券口座を開設したかわからなくなってしまうので、仕方ないのでPowerShell上に最低限のPython開発環境を作る事にする
Issueには、Windows上にNginxのリバースプロキシを立てて動いたという事らしいけど、結局Windows環境汚すならもう環境作ってしまえばいいかなと思って環境ごと作る事にした(kabuステーション自体もWindowsでしか動かないし)
作業環境
- Windows Terminal使用
- PoserShell使用
いれるもの
- winget
- git
- vim
- python
PowerShellの設定変更を出来るようにする
Linuxでいう所の、 .bash_profileみたいな物らしい?PowerShell界では、 .ps1のファイルがそれにあたるらしい(よく調べてない)
デフォルトでは無効になってるとの事
1 | // 設定確認 |
上記の通り、 Restrictedが表示されたら無効になっています
管理者権限でWindows Terminal(PowerShell)起動し、以下のコマンド実行
1 | // 設定変更 |
管理者権限を抜けてからWindows Terminal(PowerShell)を開き直し、 RemoteSignedが表示されたら有効になっています
1 | // 設定確認 |
$profileに、参照している .ps1ファイルのPATHが格納されているので確認します
1 | // .ps1のPATH確認 |
表示されたファイルにアクセスし、なければ新規作成しておきます(後述するVimのインストール時に、aliasを追加する際に使用します)
インストール: winget
なんでも、Windows版パッケージマネージャという事らしいので入れてみる
- microsoft/winget-cliのReleaseページへアクセス
Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundleみたいなのがあるので最新版をダウンロードしてインストール
1 | > winget |
インストール: git
1 | > winget install git |
インストール: vim
1 | > winget install vim |
そのままだとPATH通ってないので
1 | // 赤文字でなんか出る(NG) |
先ほど確認した .ps1ファイルに aliasを追加します
メモ帳とかで、先ほど作成した、 C:\Users\username\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1を開き、
1 | > vim $profile |
aliasを追記
1 | set-alias vi 'C:\Program Files (x86)\Vim\Vim82\vim.exe' |
追記したら、Windows Terminal(PowerShell)で設定を反映
1 | // 設定反映 |
補足: .vimと.vimrc
Linuxでいう所の .vimディレクトリは、 ~/vimfilesというディレクトリが出来ているので、 autoloadとかはここに突っ込むとよい
~/.vimrcはLinuxと同じ
インストール: python3
1 | > winget install Python.Python.3 |
vimと同じくPATHが通ってないので、 .ps1ファイルに aliasを追加します
1 | // 追記 |
設定: pip, pipenv
pipを最新にする
1 | > python -m pip install --upgrade pip |
pipのPATHが通っていないので、Windowsの環境変数 Pathに以下を追加する(※このPATHは一度 pipを実行するとWARNINGとして表示されます)
1 | %USERPROFILE%\AppData\Local\Programs\Python\Python39\Scripts |
Windows Terminal(PowerShell)を開き直して、 pipenvを入れる
1 | > pip install --user pipenv |
pipenvもPATHが遠てないので、Windowsの環境変数 Pathに以下を追加する
1 | %USERPROFILE%\AppData\Roaming\Python\Python39\Scripts |
Windows Terminal(PowerShell)を開き直して、動作確認
1 | > pip --version |