cx_freeze + selenium + python 3: нет модуля с именем «httplib»

Я пытаюсь создать свое приложение с помощью селена, у меня есть этот setup.py:

import sys
from cx_Freeze import setup, Executable


path_drivers = ( "C:\Python34\Lib\site-packages\PyQt5\plugins\sqldrivers\qsqlmysql.dll", "sqldrivers\qsqlmysql.dll" )

includes = ["atexit","PyQt5.QtCore","PyQt5.QtGui", "PyQt5.QtWidgets","PyQt5.QtSql", "selenium"]
includefiles = [path_drivers]

excludes = [
'_gtkagg', '_tkagg', 'bsddb', 'curses', 'email', 'pywin.debugger',
'pywin.debugger.dbgcon', 'pywin.dialogs', 'tcl',
'Tkconstants', 'Tkinter'
]
packages = ["os"]
path = []

# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {
                 "includes":      includes,
                 "include_files": includefiles,
                 "excludes":      excludes,
                 "packages":      packages,
                 "path":          path
}

# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
exe = None
if sys.platform == "win32":
    exe = Executable(
      script="main.py",
      initScript = None,
      base=None,
      targetName="zeus.exe",
      compress = True,
      copyDependentFiles = True,
      appendScriptToExe = False,
      appendScriptToLibrary = False,
      icon = None
    )

setup(
      name = "telll",
      version = "0.1",
      author = 'me',
      description = "My GUI application!",
      options = {"build_exe": build_exe_options},
      executables = [exe]
)

Сборка завершается без проблем, но когда я запускаю свое приложение:

ImportError: No module named 'httplib'

Моя конфигурация: Python 3.4.3 32-битная. PyQt5 Селен 2.46.0

спасибо за помощь


person Victor Villalobos    schedule 11.07.2015    source источник
comment
Попробуйте добавить httplib в список пакетов в setup.py.   -  person Thomas K    schedule 12.07.2015
comment
@ThomasK httplib — это библиотека из python2, и я использую python3, потому что PyQt5 использует python3, но для селена требуется httplib. Я не знаю, как это исправить, когда я запускаю консоль формы приложения, все работает идеально.   -  person Victor Villalobos    schedule 13.07.2015
comment
Есть ли трассировка с сообщением об ошибке? Если да, можете ли вы показать это тоже?   -  person Thomas K    schedule 14.07.2015


Ответы (1)


httplib либо отсутствует в вашем пути к каталогу, либо не был импортирован.

попробуйте добавить любой из этих двух скриптов в свой код:

  1. импортировать httplib
  2. httplib = httplib(config_file="ваш путь к httplib")
person Gus Gabel    schedule 11.07.2015
comment
проблема возникает из-за того, что селен python3 использовал httplib2, но по какой-то причине требует httplib, но отлично работает в python3. Еще при создании сборки с cx_Freeze дело в httplib я не знаю как это исправить и завершить деплой приложения. - person Victor Villalobos; 13.07.2015