@@pythonvtuber9917 「RecursionError: maximum recursion depth exceeded while calling a Python object」と出たのですがどうすればいいのでしょうか?ネットでは.specファイルに再帰回数を増やす処理(下記記載)を追加するとあったのですが… import sys sys.setrecursionlimit(10000) これでもなぜか同じエラーを吐きます…
app1.py app2.py は簡単に実行ファイルはできましたがapp3.pyは Please rename this file/folder so that the original module from the standard library can be imported. で終わり実行ファイルはできませんでした。普通に実行すればちゃんと答えも合ってます。 Window10 VScode Python 3.10.4 pandas ver1.4.2 ancondaは使用していません。
ご質問ありがとうございます!確かに、処理速度気になりますね!! 簡易な検証ですが以下のコードをMacで試してみたところ、Pythonスクリプトだと10.8秒、Exeだと11.1秒とやや遅めでした!ただ、Pyinstallerで作られたExeは起動自体にちょっと時間がかかるので、トータルでは普通にPythonでやった方が速いですね😂 ================ import time x = [] start = time.time() for i in range(10**8): x.append(i) print(time.time() - start)
こんばんはー。初心者ながらお陰様で少しずつ計算やグラフ化できるようになってきました^^ pyinstallerでexe化したいなあと思ったのですが、Python3.10だと「tuple index out of range」というエラーが出てexe化が途中で失敗してしまい、Python3.6だとexe化はできるのですが、そのexeを実行すると「PySimpleGUIが見つかりません」という意味の英文エラー(modulenotfounderror)が表示されて実行できないという…何故(TT;)
普通の記事だとexeファイル作るだけの解説で終わっていますが、specファイルの活用にまで踏み込んでいて役立つ内容でした。この内容を15分にまとめ上げているのは凄いと思います。
コメントありがとうございます😊
specファイルは簡単にしか説明してませんが、Pyinstallerの最低限の説明はできたかな...と思ってます!Exe化動画は要望が多くて、早く出さないと!!ってちょっと焦ってしまいました😵
EXE化の方法は知っていたのですが、EXE化処理自体を自動化するスクリプトをパッケージ化するのに、とても苦戦(パッケージにしてもEXEからは期待通りに動かない)していて、藁にもすがるつもりで視聴したところ、その答えが見つかりました。基本に忠実な姿勢(コマンドラインからの処理)を繰り返し見せていた点にヒントがありました。とても助かりました。
ご視聴いただきありがとうございます!!
この動画がお役に立っていたなら嬉しいです☺️
これずっと欲しかったやつです!!!本当に感謝です!!!
コメントありがとうございます😊
ぜひ色々なPythonスクリプトをExe化してみてください!
@@pythonvtuber9917 「RecursionError: maximum recursion depth exceeded while calling a Python object」と出たのですがどうすればいいのでしょうか?ネットでは.specファイルに再帰回数を増やす処理(下記記載)を追加するとあったのですが…
import sys
sys.setrecursionlimit(10000)
これでもなぜか同じエラーを吐きます…
python初心者、phtonは面白いが、できたプログラムの実行時の事が気になっていたのですが、こちらを見てホーと感心しました。ますますphthonをしっかり学んでみようと思いました。
pythonって、いろんな事が出来て奥深いですね。興味津々です。いろいろな情報、ありがとうございます。
ご視聴いただきありがとうございます!Python関連の動画を色々出しているので、気になるトピックがあればぜひ見てみてください😊
これが知りたかったです!
役立つ情報、いつもありがとうございます♪
コメントありがとうございます😊 Exe化は要望が多かったので、動画を出せて良かったです!
基本的な機能の解説だけになってますが、お役に立てたら嬉しいです!
素晴らしいです!!
これすごく役に立ちます!!!
さっそく使ってみたいと思います!!
ご視聴いただきありがとうございます😊
いろんなシチュエーションで使えると思うので、ぜひ使ってみてください!!
@@pythonvtuber9917 ありがとうございます!!
アーカイブとして残るので見直せるのでよいですね。実行ファイルのIcon変わるとちょっと嬉しい
これは知らなかった…
大変参考になりました!
Pyinstaller起動が遅いのがネックですが、うまく使えシーンでぜひ使ってみてください😊
Classって関数の親玉みたいもんで、すごいややこしい事やってるとこをClassにしちゃえばいいんだ的な認識しかなかったんですが、exe化の動画で、tkinterのクラスが画面に映った瞬間、
あー こういう事か!って妙に納得できました。
似たようなウィンドウ構成なら、Class化して使いまわすって事ですよね?
ちょうどPySimpleGUIを使ってるとこだったので、グッドタイミングでした
そうですね!クラスを使えば同じ構成のウィンドウを複数作る事ができますね!
クラスは色々使ってみることで、どんなシーンで便利か掴めてくると思うので、ぜひ「これは使ったら便利かも?」って思ったらどんどん使ってみてください😊
リクエスト採用ありがとうございます!
早速役立ってます!
ご視聴ありがとうございます!!
Exe化は基本的なことしかまとめられていないですが、お役に立てていたら嬉しいです😊
とても助かりました…感謝します!
ご視聴いただきありがとうございます😊
お役に立てていたら嬉しいです!
いつもわかりやすい動画をありがとうございます。このexe化ですが何度やっても作成に失敗します。エラーの解説動画もいつかアップしてください。
コメントありがとうございます!Exe化、失敗してしまうんですね...😵 エラー文や状況など、共有できるようでしたらコメント欄に書いていただけたら、私の分かる範囲でお答えしますので、どうぞ、コメント欄もご活用ください😉
エラー解説動画も検討してみますね!
凄い。ありがとうございます。
Pyinstaller 便利なんだけど定期的にウィルス対策ソフトが誤判定してトロイ扱いしてくるので仕事で使いづらい
いつも動画拝見しています!おかげで短時間でスクレイピングなどのスキルが身について助かってます!疑問なんですけど、なぜ対応してないライブラリがあるんでしょうか?またライブラリが対応してなかったら諦めた方がいいのでしょうか?他のEXE化するライブラリを試したのですが上手く行きません!諦めた方がいいのでしょうか?
これからも頑張ってください応援してます!!
2:10 アクセス拒否されるのですがどうしてですか?
大変勉強になります。テキストファイルを読み込むexeファイルを作成する場合、そのテキストファイル名は固定して、同じフォルダ内にexeファイルと固定したテキストファイル名のファイルを置いてexeを利用していただく事で良いのでしょうか?そうではなくて、任意のファイル名を読み込めるコマンドコードはあるものなのでしょうか?
ご質問ありがとうございます😊
必ず同じテキストファイルを使用したい場合(Exeの中に含めたい場合)は、この動画の11:48あたりからの画像ファイルをExeに含める方法と同じように実装したら良いかと思います!
それとは別に、そのExeを実行するごとに違うテキストファイルを読み込みたい場合は、Python側でテキストのPathを入力できるようなコードを書いたら良いと思います!Pythonのコマンドラインからの入力だとinput()という関数を使うと良いと思います😉 (下にサンプルコードを書いておきます)
Tkinterなどのデスクトップアプリの場合は、ファイルを指定する関数などが用意されています。Tkinter動画の19:00ぐらいのところなどが参考になると思います!
Tkinter動画 ▶︎ th-cam.com/video/F-QjKc4aEIw/w-d-xo.html
========== input関数のサンプル ==========
x = input()
print(f'{x}という値が、コンソールから入力されました')
@@pythonvtuber9917 様
ご丁寧なご返信に感謝申し上げます。早速、明日にでも取り組みたいです。誠に有難う御座います。🙏👍🙏👍🙏👍🙇🏻🙇🏻🙇🏻🙇🏻🙇🏻
動画すごく参考になりました。
ありがとうございます。
1つ質問なのですが、
Pyinstallerで実行ファイルに変換した業務効率化ツールを社内に配布する場合って、
インストールしているライブラリのライセンス関連で気を付けることってありますでしょうか。
(使ってるライブラリのライセンスに関する情報まとめたもファイルも併せて配布する必要など)
特に社外へ販売したりネット上に公開するわけじゃなく、
社内の業務改善の目的で展開する場合の想定なのですが
特に何もせずにexeファイルをそのまま渡しちゃっても問題ないものでしょうか。
この件は一言で「大丈夫です」「だめです」と言える問題じゃないので、ここでは明言はできないのですが以下のサイトがかなり分かりやすいと思います。
www.tohoho-web.com/ex/license.html
正攻法としては使っているライブラリのライセンスを1つ1つ調べて、何が許可されていて何をしなくちゃいけないのか把握した上で、社内に配る形となります。ただ、実際にはコピーレフトじゃないライセンスのみであれば問題ないと判断して利用しているケースが多いかと思います。
初めまして。
tkcalendarが含まれたファイルをexe化したのですが、カレンダーが表示されない問題に直面しています。何か原因ってあるのでしょうか?😢
そこそこ複雑なプログラムをexe化すると途中で失敗するし、回避策を取ってもようやくexe化してもファイルが重くなるし、起動までに2、3分かかるしで、あまり良い印象がないんですよね。
Pythonは元々ビルドしてExe化する用の言語じゃないし、pyinstallerはあくまでアドホックなやり方なので、Dockerとか使った方が確実ですね😉
そうなんですね。
以前いろいろと探したけどこれしか出てこなかったので、そんなものだと思ってました。
Dockerも調べてみます。ありがとうございます。
こんにちは、Python初心者です。
PySimpleGUIでの画像を含めたonefile化がわかりません。どこでsys.の指定をすればいいのか分かりません。お願いします。
ありがてぇ
コメントありがとうございます😊
こんにちは。ゲーム作ったんですけど、複数の.pyファイルがあった場合はどうすればいいのですか?
--onefileでいけますか?
exe化されたファイルを実行する時にコンソールが出現しますが、このコンソールは全てのプロセス処理を綺麗に終了させると自動的に消える仕様になっているようですね。最近気付きました 😅
ご視聴いただきありがとうございます😊
そうですね、コンソールは消えますね!
htmlとcssとjs一括でexe化、解説もお願いします😙
webpackみたいなイメージですかね!
@@pythonvtuber9917 サプーさん今日も可愛い
OpenAIのWhisperライブラリがPyinstallerでうまく取り込めないんだよね。。
対応していないライブラリもあるので万能というわけじゃないですね...
app1.py app2.py は簡単に実行ファイルはできましたがapp3.pyは
Please rename this file/folder so that the original module from the standard library can be imported.
で終わり実行ファイルはできませんでした。普通に実行すればちゃんと答えも合ってます。
Window10 VScode Python 3.10.4 pandas ver1.4.2 ancondaは使用していません。
ご質問ありがとうございます!
私の環境では動画で実演しているとおり実行ファイルが生成できてるため、なぜ出来ないのかはちょっとわからないのですが、エラー文の通り、app3.pyを保存しているフォルダ名やファイル名を変更して再実行してみてはいかがでしょうか?
Pythonの標準モジュール・ライブラリなどと同じ名前のフォルダ名・ファイル名がある場合、上手くいかないと思います😵
@@pythonvtuber9917
わざわざ、古い動画への回答ありがとございます。
保存フォルダー名は変えてみましたがダメでしした。
多分、ライブライリと同じファイルを作ったような気がします。
別のPCですのでその辺も確かめてみます。
遅くなりましたが、全角.pyとかライブライリ.pyとかを変更したりなんだかんだして、
app3.pyのまま実行ファイルができました。フレームが出てきて答えがでるのに2秒位かかります。specの悪い方のPCでしているので( ´艸`)
Хотя я ни чего не понял. Но все равно Очень Большое Спасибо за проделаную работу!
Спасибо за просмотр видео! Я рад, что ты прокомментировал.
インタプリタだから実行効率が悪いものをEXEで実行した場合の処理速度はどうなんだろう
ご質問ありがとうございます!確かに、処理速度気になりますね!!
簡易な検証ですが以下のコードをMacで試してみたところ、Pythonスクリプトだと10.8秒、Exeだと11.1秒とやや遅めでした!ただ、Pyinstallerで作られたExeは起動自体にちょっと時間がかかるので、トータルでは普通にPythonでやった方が速いですね😂
================
import time
x = []
start = time.time()
for i in range(10**8):
x.append(i)
print(time.time() - start)
pipでpyinstallerをインストールしようとすると、Macでしか使えないfcntlというモジュールがありませんよ、とエラーが出てくるのですがWindowsでは使えないのでしょうか…?
いいえ、本動画はWindowsで撮影していますし、Windowsで使えないということはないですね!
CMDからやってみたんですけど、
Syntax Error test.py --onefile
^^^^
って出てうまく行きません。ファイルのディレクトリもあってます。どうすればいいでしょうか?
ご質問ありがとうございます!
もう少し詳細なエラー情報を教えていただけますでしょうか?これだけだと何も分からないです😵
エラー解消の動画を出しているので、一度ご視聴をお願いいたします。
エラー解消 ▶︎ th-cam.com/video/dt7uuKztjjQ/w-d-xo.html
plInstraller をどこから開くのか教えてほしいです!
開くというのはコマンドを実行するという意味ですか??
インストールされてればどこでも大丈夫です!
@@pythonvtuber9917 5:01のソフトは「pyinstaller」ではないのでしょうか?
それともanacondaなどから開く方法がありますか?
エディタのことでしょうか?
エディタはPyCharmを使ってます。解説動画も出しています!
th-cam.com/video/FaI8wcC1PXI/w-d-xo.html
@@pythonvtuber9917 このソフトがpyinstallerではないのですね!ありがとうございます
Onefile、noconsol指定の時にwindows Defenderがウィルス判定を行うみたいですが、なにか解決策はありますか?
ご質問ありがとうございます😊
試してないので上手くいくか分からないのですが、MS公式サイトで「Windows セキュリティに除外を追加する」というページを見つけました!この手順で作成した実行ファイルがウィルス判定されないようにすることができるんじゃないかなぁ...と思っているのですが、いかがでしょうか?
support.microsoft.com/ja-jp/windows/windows-%E3%82%BB%E3%82%AD%E3%83%A5%E3%83%AA%E3%83%86%E3%82%A3%E3%81%AB%E9%99%A4%E5%A4%96%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B-811816c0-4dfd-af4a-47e4-c301afe13b26
コメント失礼します,どうしても友達のパソコンに入れた瞬間にWindowsセキュリティーに消されてしまいます。友達はパソコンが苦手で、困っています
どうすればセキュリティーに引っ掛からないファイルができるか教えて欲しいです!
Macしか持ってなくてWindows向けのデスクトップアプリを作りたい場合はどうするんだろう‥‥
公式のFAQに、MacでWin向けExeは対応してないと書いてあります。
github.com/pyinstaller/pyinstaller/wiki/FAQ
無理やるとしたらBoot Campとかですかね?
技術的には出来るんですけど、Python の容量がバカ程巨大になるからやりたく無いでしょうね。
両方で動作するようにするのは、根本から作り直さないとならないし。
ディレクトリを指定して取得したデータを保存するPythonファイルはどのようにすれば良いでしょうか?
ご質問ありがとうございます!
実行時にファイルを保存するディレクトリを決めたい、ということでしょうか?その場合はコンソールからの入力値を取得できる input() 関数が使えると思います!下にinput関数のサンプルを記載しておきますね😉
========== input関数のサンプル ==========
x = input()
print(f'{x}という値が、コンソールから入力されました')
返信ありがとうございます。
全く同じコードを真似してみたのですが、exeファイルを開いたとき、コマンドプロンプトが一瞬出てすぐ消えてしました。何が原因でしょうか?
たとえばライブラリやpythonの保存先とかは関係ありますか?
windows10でjupyterlabを使っています。
私はjupyterlabでは動作確認してないので、まずPythonファイルを作成してexe化を実行してみた方が良いかな、と思います!
@@pythonvtuber9917 コメントありがとうございます!Pythonファイルに直したらうまくいきました!(jupyterlabでipynbファイルのままexe化してしまってました。)
あと、要望なのですが、アプリ作成の時に、外部ファイルを組み込むときの解説動画があると嬉しいです。
最後にありましたね。すみません
config.iniファイルがあると、エラーってしまうケースもありますので、未だに解決されてない記憶が。。。
そうなんですね!ちょっと状況がわからないですが、もしPyinstaller側のバグであればissueを送ってみるとかですかね🤔
ユーザーも定義できる外部ファイルとしてiniファイルを使っていますが、アプリは問題なく動きます。
3.8.5です。
Pyinstaller、win10
こんばんはー。初心者ながらお陰様で少しずつ計算やグラフ化できるようになってきました^^
pyinstallerでexe化したいなあと思ったのですが、Python3.10だと「tuple index out of range」というエラーが出てexe化が途中で失敗してしまい、Python3.6だとexe化はできるのですが、そのexeを実行すると「PySimpleGUIが見つかりません」という意味の英文エラー(modulenotfounderror)が表示されて実行できないという…何故(TT;)
ご質問ありがとうございます😊
Python3.6ではPySimpleGUIはインストールされていますか?インストールされていないライブラリがあってもPyinstallerでExe化するときにエラーにはならないようです!
@@pythonvtuber9917
こんばんはー。
仰る通りモジュールをpip listで確かめた所、3.6環境でPySimpleGUIが入っておりませんでしたorz
pip installしたところ無事exe化できました!!どうもありがとうございました!!
(仰るように未インストールのライブラリがあってもexe化は出来るのですが、そのexeを実行するとmodulenotfounderrorが出ていました…^^;)
pyinstallerでexe化できない方もいるようなので、この度ドツボにはまった事情をシェアしたいと思います。なにかお役に立てれば幸いです。
PC環境:Windows10 64bit
Python環境:Python3.10のIDLE
解決できた方法:Python3.6をパスを通してインストールし、Python3.10をパスを通さずインストール。
私の環境では3.10のpyinstallerでexe化しようとすると、簡単なコードは問題なくexe化できるものの、少し複雑なコードになると「tuple index out of range」というエラーが出てexe化が失敗します。
exe化したいコードは外部モジュールを多用しており、必要モジュールを知るべく3.10のIDLEで実行してmodulenotfounderrorが出た物をpip install等で入手する方法で環境を整えていました。その後、pyinstallerでexe化するには3.10よりも3.6の方がやりやすい事に気付き3.6を導入しました。しかしexe化には成功してもモジュール(PySimpleGUIでした)が見つからないという意味のエラーでexeを起動できませんでした。これについて以下書きます。
3.10のIDLEでスクリプト実行するにはRunメニューの「一番上」にあるRun Moduleを選択しますが、3.6のIDLEではRunメニューの「一番下」にあるRun Moduleを選択します。この一番上にあるのは「Python Shell」です。
したがって、3.10ではmodulenotfounderrorが出ていたのに、3.6ではPython Shellを選択していたので、モジュールが入っていようがいまいがmodulenotfounderrorなど出るはずもなく、3.6環境でPySimpleGUIが入っていない事に気付けませんでした。これが私が得た一つの注意点です。
次に、pyinstallerでexe化する方法ですが、まず3.10で必要な外部モジュールを全てインストールしておきます。次に3.10をアンインストールし、3.10を「パスを通さずに」インストールし、3.6を「パスを通して」インストールします(インストーラーの最初にそのチェックボックスがあります)。これでコマンドプロンプトで「pyinstaller ファイル名」を命令すると3.6でexe化が実行され成功します。--onefileなどのオプションも普通に使えました!
今後新たに外部モジュールをpip installで3.10にインストールできるかどうかまでは試していませんが、Pythonをアンインストールしても外部モジュールは消えませんし、ひとまずexe化には成功したという事で、ここに公開いたします!
pipinstaller出来たのに何故かpyinstallerが存在しない 何故だ🥺
🤔
우와 ㅋㅋㅋㅋㅋㅋ 코딩 전문 v tuber는 정말 신박하네요!!! 구독 하겠습니다!
시청 해 주셔서 감사합니다! 등록해 주셔서 기뻐요!
python~ a ha~
😉 a~