I want to use PyQt4 from a network location.
I installed Python 2.6.4 x32 in a client and kept PyQt4 x32 module in a network share (for Ex: "\share\Pyton_Modules\x32").
when opened python i did as below and it worked
import sys
sys.path.append(r'\\share\Pyton_Modules\x32')
from PyQt4 import QtGui
everything worked fine.
But i tested the same way for python 2.6.4 x64 in a client and keeping PyQt4 x64 in a network share (for Ex : "\share\Pyton_Modules\x64")
when opened python i did as below and it didn't worked
import sys
sys.path.append(r'\\share\Pyton_Modules\x64')
from PyQt4 import QtGui
i get below error
Traceback (most recent call last):
File "<pyshell#4>", line 1, in <module>
from PyQt4 import QtGui
ImportError: DLL load failed: The specified module could not be found.
I found a solution to overcome my situation.
I moved all the files from PyQt4\bin to PyQt4 and it worked without any issue...
Hope this could help someone.
Related
I have built a program that edit excel sheets. I build a GUI with PyQt5 for it. I used Qt Creator to generate the code for the GUI. The program was working fine before, but after I tried to make it into an app with py2app and pyinstaller I keep getting an Import Error:
(venv) Febins-MacBook-Pro:Planner Builder Febin.J$ "/Users/Febin.J/Documents/Projects/Python Projects/Planner Builder/venv/bin/python" "/Users/Febin.J/Documents/Projects/Python Projects/Planner Builder/birthdaywindow.py"
Traceback (most recent call last):
File "/Users/Febin.J/Documents/Projects/Python Projects/Planner Builder/birthdaywindow.py", line 11, in <module>
from PyQt5 import QtCore, QtGui, QtWidgets
ImportError: cannot import name 'QtCore' from 'PyQt5' (/Users/Febin.J/Documents/Projects/Python Projects/Planner Builder/venv/lib/python3.10/site-packages/PyQt5/__init__.py)
The strange this is that it was working fine before. This is my packages installed:
altgraph==0.17.2
appscript==1.1.2
auto-py-to-exe==2.14.0
beautifulsoup4==4.10.0
bottle==0.12.19
bottle-websocket==0.2.9
bs4==0.0.1
certifi==2021.10.8
charset-normalizer==2.0.9
Eel==0.12.4
et-xmlfile==1.1.0
future==0.18.2
gevent==21.12.0
gevent-websocket==0.10.1
greenlet==1.1.2
idna==3.3
macholib==1.15.2
modulegraph==0.19.2
numpy==1.22.0
openpyxl==3.0.9
Pillow==8.4.0
psutil==5.9.0
py2app==0.26.1
pyinstaller==4.7
pyinstaller-hooks-contrib==2021.5
PyQt5==5.15.6
PyQt5-Qt5==5.15.2
PyQt5-sip==12.9.0
requests==2.26.0
soupsieve==2.3.1
urllib3==1.26.7
whichcraft==0.6.1
xlwings==0.25.3
zope.event==4.5.0
zope.interface==5.4.0
This is where the error occurs:
1 # -*- coding: utf-8 -*-
2
3 # Form implementation generated from reading ui file 'mainwindow.ui'
4 #
5 # Created by: PyQt5 UI code generator 5.15.6
6 #
7 # WARNING: Any manual changes made to this file will be lost when pyuic5 is
8 # run again. Do not edit this file unless you know what you are doing.
9
10
11 from PyQt5 import QtCore, QtGui, QtWidgets
12 import datetime
13 from datetime import *
14 from eventwindow import Ui_EventWindow
15 from webScraping import publicHolidays, schoolHolidays, uniHolidays
16 from main import creating_planner
Could you please help me solve this error?
I think there isn't support yet for Python 3.10:
https://github.com/altendky/pyqt-tools/issues/98
I had the same issue. I was finally able to install PyQt5 by forcing the version to 5.15.5 that is supported by Python 3.10. You can use the below command line:
pip install PyQt5==5.15.5
When trying to run a simple test of a database.py:
import pymysql.cursor
from PyQt5.QtCore import pyqtSignal, QObject, QTimer
This the output in the Exceptions tab of WingWare IDE:
File "c:\MyProjects\___MECHANIKOS\UltraSimpleSarlaccPit\01_UltraSimpleSarlaccPit.py", line 1, in <module>
from database import Database
 File "c:\MyProjects\___MECHANIKOS\UltraSimpleSarlaccPit\database.py", line 2, in <module>
from PyQt5.QtCore import pyqtSignal, QObject, QTimer
builtins.ImportError: DLL load failed: The specified module could not be found.`
There was an error when installing PyQt5 that says it was built for 3.5 not 3.4. So is that why?
If so, where can we download a 3.4.3 compatible version?
Thanks!
Regards,
Team Mechanikos
Try upgrading to 3.5:
Uninstall old PyQt5 and Python 3.4.3 through control panel > Programs
Install python 3.5.1, specifying making sure you specify C:\Python35\ as install location.
Install PyQt5 for 3.5 (Current).
Works.
I am new to coding and trying to run a .py. I am using Koopatlas and Koopuzzle to create NSMBW Maps. I have installed PyQt4 (I checked brew list) and Python but when I run it it says this:
Traceback (most recent call last):
File "Koopuzzle.py", line 10, in <module>
from PyQt4 import QtCore, QtGui
ImportError: No module named PyQt4
They're both in .py format, and they both give the same results.
I've checked online sources but I've found nothing. Does someone know how to solve?
Thanks, Gunner
Hi everyone and thanks for reading. I'm packaging my python code in a single file using pyinstaller, but when I run my packaged file I get the following error:
Traceback (most recent call last):
File "<string>", line 21, in <module>
File "C:\Users\****\Desktop\pyinstaller-2.0\pyinstaller-2.0\PyInstaller\loader\iu.py", line 409, in importHook
ImportError: No module named PyQt4.QtCore
I don't know what this error is telling me, especially since there is no dir name pyinstaller-2.0 on my desktop and I did not use PyQt4 at all.
Imported modules: Tkinter, tkFileDialog, tkMessageBox, multiprocessing, os, sys, time, numpy, scipy.weave, pywt, matplotlib.pyplot
I think the problem is related to multiprocessing, since I did not experience this error before. I used this recipe to implement the multiprocessing module correctly.
If you were using PyQt then the only way to import the modules with PyInstaller is to use
from PyQt4 import QtCore, QtGui
rather than
import PyQt4.QtCore, PyQt4.QtGui
which your error implies. However, you say that you're not using PyQt.
PyQt is an optional dependency of matplotlib so there is a chance that PyInstaller is checking the matplotlib module and consequently including PyQt.
I would suggest excluding the PyQt module from the build; in your .spec file, search out the line for the Analysis class - something like
Analysis( ..., excludes=['PyQt4', 'PyQt4.QtCore', 'PyQt4.QtGui'])
and edit the excludes keyword arg as suggested above.
I'm running Python 2.6.6 on Ubuntu 10.10.
I understand that we can import a module and bind that module to a different name, e.g.
import spam as eggs
also,
from eggs import spam as foo
My problem is that when running the PySide examples, the following import code does not run:
import PySide as PyQt4
from PyQt4 import QtCore, QtGui
It generates an import error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named PyQt4
Clearly, according to the Python interpreter the above code is incorrect, my question is why is it incorrect or rather why doesn't this work?
import and from are a special syntax.
They look for a module name, which means a file in sys.path which starts with the module name.
And it seems like you don't have PyQt4 installed, so it will fail.
The fact that you have a variable called PyQt4 in your namespace after running import PySide as PyQt4 does not change anything, Python is still looking for an actual module called PyQt4 when you do from PyQt4 import QtCore, QtGui.
Try doing
import PySide as PyQt4
QtCore = PyQt4.QtCore
QtGui = PyQt4.QtGui
or
import PySide as PyQt4
from PySide import QtCore, QtGui
That should be equivalent.
I just installed PySide and was doing a tutorial where all the examples used PyQt4. I got tired of changing the imports from PyQt4 to PySide so I just made a symlink in my site-packages, using the following steps:
1) There's surely a better way but I found where my python packages were installed by opening a shell and running python, then at the interactive interpreter typed:
>>> import sys
>>> print sys.path
2) I then found PySide in one of the directories and cd'd to it (n.b. It's at /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages if you're using the macports PySide install for python 2.7 on Mac OSX Leopard 10.5.8).
3) Then I made a symlink with ln, in my case I had to use sudo:
sudo ln -s PySide PyQt4
That's it, now I can just use:
from PyQt4 import QtGui
as normal - happy days!
Obviously, if you ever want to install PyQt4 you should rm the PyQt4 symlink first.
Another caveat: What I've described above may well be wrong/bad in many ways - I am no expert at Python installs but so far it's ok for me. YMMV so use at your own risk. Hopefully someone will comment soon to say "no, very bad!" or ideally "yeah don't sweat it, we cool.."