【问题标题】:Attempting to use PyInstaller with Selenium and Pandas尝试将 PyInstaller 与 Selenium 和 Pandas 一起使用
【发布时间】:2022-10-21 08:20:11
【问题描述】:

我正在尝试创建一个可以在用户提供的网站上搜索项目的应用程序。我希望应用程序能够由非 Python 用户运行。我尝试将 PyInstaller 与以下代码一起使用。它运行成功,但在尝试让应用程序运行时,底部的错误返回。只是在寻找任何想法,至少可以为我指明正确的方向。另外作为参考,我添加了脚本的前几行以显示包含的库和 webdriver。我也在使用 Anaconda 和 Spyder。

!pyinstaller ./product_finder.py --onefile --noconsole --add-binary "./driver/chromedriver.exe;./driver"



from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec
import pandas as pd

user_report = input("\nPlease enter the web address:\n")

driver = webdriver.Chrome(executable_path='./driver/chromedriver.exe')
driver.get(user_report)

#来自控制台的错误消息

Traceback (most recent call last):
  File "product_finder.py", line 8, in <module>
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
  File "selenium\webdriver\__init__.py", line 18, in <module>
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
  File "selenium\webdriver\firefox\webdriver.py", line 29, in <module>
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
  File "selenium\webdriver\remote\webdriver.py", line 26, in <module>
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "PyInstaller\loader\pyimod03_importers.py", line 495, in exec_module
  File "selenium\webdriver\remote\webelement.py", line 43, in <module>
  File "pkgutil.py", line 637, in get_data
  File "PyInstaller\loader\pyimod03_importers.py", line 344, in get_data
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\user\\AppData\\Local\\Temp\\1\\_MEI134402\\selenium\\webdriver\\remote\\getAttribute.js'

#例子

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec
import pandas as pd

user_report = input("\nPlease enter the web address you wish to open:\n")

driver = webdriver.Chrome(executable_path='./driver/chromedriver.exe')
driver.get(user_report)

while True:
    introduce = input("\nClick enter to end the program..\n")
    if introduce == "":
        break

#用于 Anaconda/Spyder 上 PyInstaller 的代码:

!pyinstaller ./test.py --onefile --add-binary "./driver/chromedriver.exe;./driver"

【问题讨论】:

  • 您是否安装了最新版本的 pyinstaller?你能跑吗pip install -U pyinstaller
  • 我实际上正在使用 Anaconda 和 Spyder。不确定这是否会使这变得更加困难。
  • pyinstaller --version 的输出是什么
  • 我添加了一个缩短代码的示例,该示例在 PyInstaller 完成后提供该错误。

标签: python pandas selenium webdriver pyinstaller


【解决方案1】:

尝试这个: !pyinstaller ./test.py --onefile --collect-data selenium --add-binary "./driver/chromedriver.exe;./driver"

在这里找到:Error while executing my .exe made with pyinstaller

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-22
    • 2019-08-06
    • 2013-02-01
    • 2011-12-25
    • 2012-11-22
    • 2023-03-10
    相关资源
    最近更新 更多