2015-03-02 2 views
0

Я использую Python 3.4.1 в системе Windows 7 x86_64, и у меня есть сценарий, который автоматически загружает некоторые дампы данных с веб-сайта с помощью веб-браузера Firefox, для которого я написал скрипт python ,Ошибка преобразования скрипта python в exe

В питоном скрипте я импортирующий:

from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 
from selenium.webdriver import ActionChains 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC 
import time 
import os 

Я также вызывающий файл «.bat» из сценария с помощью:

os.system("C:\\some_user\\Test1.bat") 

теперь я хочу, чтобы создать». exe "для этого, чтобы он мог быть распространен на многие машины без необходимости установки« Python »или« Selenium ».

и я использую следующий файл «setup.py»:

from distutils.core import setup 
import py2exe 

setup(console=['Get_Data.py']) 

где «Get_Data.py» это скрипт должен быть преобразован в исполняемый файл.

Когда я выполнить команду:

C:\My_Project>python3 setup.py py2exe 

Я получаю результат:

running py2exe 

    3 missing Modules 
    ------------------ 
? readline       imported from cmd, code, pdb 
? win32api       imported from platform 
? win32con       imported from platform 
Building 'dist\New_HPSM_Tool.exe'. 
Building shared code archive 'dist\library.zip'. 
Copy c:\windows\system32\python34.dll to dist 
Copy C:\Python34\DLLs\select.pyd to dist\select.pyd 
Copy C:\Python34\DLLs\_bz2.pyd to dist\_bz2.pyd 
Copy C:\Python34\DLLs\_socket.pyd to dist\_socket.pyd 
Copy C:\Python34\DLLs\_lzma.pyd to dist\_lzma.pyd 
Copy C:\Python34\DLLs\_hashlib.pyd to dist\_hashlib.pyd 
Copy C:\Python34\DLLs\_ssl.pyd to dist\_ssl.pyd 
Copy C:\Python34\DLLs\pyexpat.pyd to dist\pyexpat.pyd 
Copy C:\Python34\DLLs\unicodedata.pyd to dist\unicodedata.pyd 
Copy C:\Python34\DLLs\_ctypes.pyd to dist\_ctypes.pyd 

И когда я иду в "DIST" папку в C: \ my_project и выполнить "Get_Data.exe" , Я получаю следующий вывод:

Traceback (most recent call last): 
    File "Get_Data.py", line 11, in <module> 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\webdriver.py", 
line 43, in __init__ 
    self.profile = FirefoxProfile() 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\firefox_profile 
.py", line 64, in __init__ 
    WEBDRIVER_PREFERENCES)) as default_prefs: 
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\My_Project\\dist\\library.zip\\selenium\\webdriver\\firefox\\webdriver_prefs.jso 
n' 

Что делать, чтобы получить exe-файл. Я использую «py2exe» как любитель.

Спасибо!

ответ

0

Ну, ошибка говорит о том, что программа не может найти файл в C:\My_Project\dist\library.zip\selenium\webdriver\firefox\webdriver_prefs.json

Вы уверены, что каталог и файл он ищет там?

+0

Да, каталог существует. Но вместо файла с именем ** "webdriver_prefs.json" ** есть файл ** "webdriver.pyc" **. Что я должен делать дальше? – Arun

+0

Всё зависит от: Если этот файл тот, который вы ищете, просто измените код, чтобы использовать этот файл. В противном случае вам придется либо искать в другом каталоге, либо, может быть, найти файл в Интернете. –

Смежные вопросы