MSI для приложения tkinter, созданного с использованием cx_freeze, не работает - PullRequest
0 голосов
/ 21 мая 2018

Я создаю приложение на Python с использованием Tkinter, в котором я использовал библиотеки beautifulsoup и googlesearch.setup.py приложения выглядит следующим образом:

import cx_Freeze
import sys

base = None
if sys.platform == 'win32':
    base = "Win32GUI"

executables = [cx_Freeze.Executable("subd.py", base=base, icon = "icon.ico")]

cx_Freeze.setup(
    name = "SubD",
    author = "Mayank",
    options = {"build_exe":{"packages":["tkinter","bs4","googlesearch","requests","os"], "include_files":["icon.ico"]}},
    version = "2.1",
    description = "Subtitle Downloader",
    executables = executables
)

В коде Python main.py Я использую функцию search() (из библиотеки googlesearch) следующим образом -

import googlesearch as gs
...
for j in gs.search(q, tld="com", num=10, stop=1, pause=3):
    sp = "https://subscene.com/subtitles/"
    n = len(sp)
    if j[:n] == sp:
        possible.append(j)

Исполняемый файл этого кода, созданный с помощью -

python setup.py build

, работает нормально.Но когда я создаю MSI для этого, используя -

python setup.py bdist_msi

Функция search() библиотеки googlesearch, похоже, не работает.Хотя, если вместо установки через MSI на новый ПК, я копирую папку build на новый ПК и запускаю напрямую, она все равно работает нормально.Кроме того, MSI отлично работает на моем ПК, возможно, потому что у меня установлены все необходимые библиотеки.Пожалуйста, объясните, почему это происходит, и как я могу это исправить, это очень поможет.

Спасибо

...