Найти - Пользователи
Полная версия: py2exe и MySQLdb
Начало » Python для новичков » py2exe и MySQLdb
1
Vaal
есть скрипт, парсер лог файла, после парсинга данные заносятся в базу
попытался скомпилировать в exe, после запуска ехешника получил ошибку
попробовал скомпилировать простейший скрипт print “Hello World!” - все нормально ехешник работает
попробовал добавить первые строки кода парсера
import re
import time
import os
import MySQLdb

print "Hello World!"
получил ошибку

D:\Python!\PARSER\dist>hello.exe
Traceback (most recent call last):
File “hello.py”, line 4, in <module>
File “MySQLdb\__init__.pyc”, line 19, in <module>
File “_mysql.pyc”, line 12, in <module>
File “_mysql.pyc”, line 10, in __load
ImportError: DLL load failed: =х эрщфхэ єърчрээvщ ьюфєы№.

как решить эту проблему?
bialix
скорее всего какой-то dll не хватает. Ее нужно явно указать для py2exe в вызове setup() либо через опцию includes, либо через data_files. Посмотрите рекомендации на сайте py2exe.org: http://py2exe.org/index.cgi/WorkingWithVariousPackagesAndModules
pasaranax
Попробуй в setup(options={…}) добавить “includes”:
Vaal
не сработало
from distutils.core import setup
import py2exe

setup(
options={
"py2exe": {
"includes":["MySQLdb"]

}},

console = [{"script": 'hello.py'}] )
D:\Python!\PARSER\dist>hello.exe
Traceback (most recent call last):
File “hello.py”, line 4, in <module>
File “MySQLdb\__init__.pyc”, line 19, in <module>
File “_mysql.pyc”, line 12, in <module>
File “_mysql.pyc”, line 10, in __load
ImportError: DLL load failed: =х эрщфхэ єърчрээvщ ьюфєы№.
bialix
С сайта мелоксофт качаешь утилиту depends. В каталоге dist (или где у тебя твой exe находится) ищешь _mysql.pyd и запускаешь depends _mysql.pyd. Откроется окошко и покажет какие dll импортируются этой pyd и каких не хватает. Ишещь каких не хватает и добавляешь (например через data_files). Фирштейн?
Vaal
спасибо! заработало ))
есть еще один вопрос, запускаю ехе через командную строку
вначале идет такая строка
D:\Python!\PARSER\dist\library.zip\MySQLdb\__init__.py:34: DeprecationWarning: the sets module is deprecated

что то про устаревший модуль, стоит разбираться с этим или ничего страшного?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB