質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

Q&A

0回答

1300閲覧

pyinstallerでexe化したファイルの動作が止まります。

hiroyk

総合スコア0

PyInstaller

PyInstallerは、Pythonのスクリプトを一括でWindowsなどで動く実行可能ファイルに変換できるツールです。このツールを用いることで自作のPythonプログラムを別で使用する場合でもPythonをインストールする必要がありません。

0グッド

0クリップ

投稿2021/12/15 09:38

概要
当方、経理事務をしており、WebベースのシステムにCSVのデータを転記するRPAの
ようなものをpythonで作成しており、これをpyinstallerで同僚に配布を行おうとしています。
コードを直接実行するとうまく動作し、exe化にも成功するのですが、作成されたexeファイルを
起動させると途中で動作が止まります。
どうやらWebdriver managerを動作させる際にエラーが発生していることは分かったのですが、
どのように対応したらよいかがわかりませんのでアドバイスをお願いします。

エラーコード
pyinstallerにdebug --allオプションをつけて確認したエラーは以下のとおりです。

Traceback (most recent call last):
File "xxxx.py", line 269, in <module>
File "C:\Users\xxxx\AppData\Roaming\Python\Python37\site-packages\webdriver_manager\microsoft.py", line 50, in init
super().init(path, log_level, print_first_line, cache_valid_range)
File "C:\Users\xxxx\AppData\Roaming\Python\Python37\site-packages\webdriver_manager\manager.py", line 13, in init
log("====== WebDriver manager ======", level=log_level)
File "C:\Users\xxxx\AppData\Roaming\Python\Python37\site-packages\webdriver_manager\logger.py", line 25, in log
_init_logger(level, name, first_line, formatter)
File "C:\Users\xxxx\AppData\Roaming\Python\Python37\site-packages\webdriver_manager\logger.py", line 19, in _init_logger
logger.setLevel(level)
File "c:\users\xxxx\appdata\local\programs\python\python37\lib\logging_init
.py", line 1353, in setLevel
self.level = checkLevel(level)
File "c:\users\xxxx\appdata\local\programs\python\python37\lib\logging_init
.py", line 195, in _checkLevel
raise TypeError("Level not an integer or a valid string: %r" % level)
TypeError: Level not an integer or a valid string: None
[8764] Failed to execute script '14RPAHeadless' due to unhandled exception!

pythonコード
exe化したコード(xxxx.py)は以下のとおりです。(インポートしたライブラリと該当と思われる個所を
抜粋しています。)OSはWin10,PythonはPython3.10(64bit),pyinstallerは4.7,webdriver-managerは3.5.2を
使用しています。

8 from selenium import webdriver
9 from msedge.selenium_tools import Edge, EdgeOptions
10 from webdriver_manager.microsoft import EdgeChromiumDriverManager
11 from selenium.webdriver.common.keys import Keys
12 import time
13 import gc
14 import openpyxl
15 import pyautogui
16 import tkinter as tk
17 import tkinter.filedialog
18 import os
19 import sys

-中略-

258 dir ="c:"
259 root =tkinter.Tk()
260 root.withdraw()
261 fld =tk.filedialog.askopenfilename(filetypes = [("エクセル旧",".xls"),("エクセル新",".xlsx"),("エクセルマクロ","*.xlsm")],initialdir =dir)
262 root.destroy()
263 workbook = openpyxl.load_workbook(fld)

265 options = EdgeOptions()
266 options.use_chromium = True
267 options.add_argument('--headless')
268 options.add_argument('--window-size=1920,1080')
269 driver = Edge(EdgeChromiumDriverManager().install(),options=options)
270 driver.get(
'https://site1.sbisec.co.jp/ETGate/?_ControlID=WPLEThmR001Control&_PageID=DefaultPID&_DataStoreID=DSWPLEThmR001Control&_ActionID=DefaultAID&getFlg=on')

現状の対応
ライブラリに手を付けないと何ともなりそうにない気がしてエラー対応として何もできていない状況です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問