我创建了一个python应用程序,它从谷歌电子表格中提取数据并执行所需的操作并相应地输出包含数据的文件。该应用程序通过我的ide和控制台正常工作。我使用gspread and Tkinter
分别访问Google工作表和GUI。
然而,当我尝试将其创建为exe时。我一直遇到错误。
首先我尝试使用py2exe,但我一直收到错误
ImportError: No module named gspread
我的setup.py是
from distutils.core import setup
import py2exe
setup(console = ["app.py"], options={"py2exe":{"includes":["gspread"]}})`
我用命令python setup.py py2exe
我还使用命令pyinstaller app.py
尝试了pyInstaller,我得到了同样的错误。虽然在这种情况下命令完全执行并且exe被创建但是当我运行它时控制台窗口闪烁说明
ImportError: No module named gspread
我也尝试使用cx_freeze来创建可执行文件。我使用的命令是
python setup.py build_exe -s -p gspread,json,oauth2client.client,os
这会创建可执行文件但我收到错误
I\O operation failed
代码的第187行
credentials = oauth2client.client.GoogleCredentials.get_application_default()
credentials = credentials.create_scoped(['https://spreadsheets.google.com/feeds'])
gc = gspread.authorize(credentials) #line 187
我在第187行使用try / except块抓住了