作成するときは仮想環境で
普通に作成したらexeの実行から動き出すまで、
10秒以上かかりフリーズしたのか心配になりました。
仮想環境を作成してそのままexeファイルを作成すると
必要なライブラリのフォルダが少なくなるのか軽くなりました。
参考
https://qiita.com/plumfield56/items/3296b24fea4ea5bbbbcf
pandasを使うときは--hidden-importオプションをつける
この記事を参考にしました。
https://stackoverflow.com/questions/47318119/no-module-named-pandas-libs-tslibs-timedeltas-in-pyinstaller
私の場合は下記のエラーが表示されました。
no module error named 'pandas._libs.tslibs.base'
なのでexeファイルを作成時に下記のコマンドへ変更したら問題なく動くようになりました。
pyinstaller --onedir --onefile --hidden-import pandas._libs.tslibs.base myScript.py
オプションについて
なぜ--ondirを付けたのか自分でもわからず調べたがぱっとわからなかったので、
必要なタイミングで調べて追記予定
pandasからのフォルダの保存
保存先の絶対パスを作成するのにos
を使用しました。
seleniumでドライバーを指定するのにも同じような書き方をします。
import pandas as pd
import os
df = pd.DataFrame(data)
file_name = f'\\{ファイル名}.csv'
path = os.getcwd() + file_name # 保存先のパスをexeファイルと同じにする
df.to_csv(path, encoding="utf-8_sig", index=False)
これ気になったので次回触るときに参考にしたい