Python 2.7.11 - ImportError: cannot import name QtWebKit - Kali Linux / Debian 8
Python 2.7.11 - ImportError: cannot import name QtWebKit - Kali Linux / Debian 8
我正在尝试启动一个依赖于 QtWebKit 的应用程序,但我无法导入该模块。我尝试通过启动 python 和导入其他模块来进行调试。它们都工作正常(例如 from PyQt4 import QtGui, QtCore)没有任何问题,但是当我 运行
from PyQt4 import QtGui, QtCore, QtWebKit
我收到以下信息:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name QtWebKit
我也试过以下方法无济于事(它们安装正常但没有解决问题):
apt-get install --reinstall python-qt4
apt-get install --reinstall python-2.7
这是应用程序的问题,sparta?。
Kali Rolling 所基于的 Debian Stretch 在 PyQt4 中有 mothballed QtWebKit。
最新版本不包含QtWebkit.so。
不幸的是,需要更新相关代码以使用 PyQt5 等效模块等替代方案。
可以在 Jun/2/2016
的 kali 错误报告站点上找到有关此问题的错误报告
可选bodge/quick n 脏修复[适用于最新版本的 Kali]
与此同时,如果它是斯巴达并且你现在需要它的功能:
apt 安装 python-pyside.qtwebkit
从 https://github.com/SECFORCE/sparta 克隆一个副本到任何合适的地方,在我的例子中 /opt/recon/sparta,这会保留系统版本,因此它可以正常修复更新。
编辑 sparta.py
从第 22 行删除 QtWebKit
插入第 26 行到第 30 行的代码
21 try:
22 from PyQt4 import QtGui, QtCore
23 except:
24 print "[-] Import failed. PyQt4 library not found. \nTry installing it with: apt-get install python-qt4"
25 exit()
26 try:
27 from PySide import QtWebKit
28 except:
29 print "[-] Import failed. QtWebkit library not found. \nTry installing it with: apt-get install python-pyside.qtwebkit"
30 exit()
编辑ui/view.py
注释掉第 15 行
15 #from PyQt4 import QtWebKit # to show html code (help menu)
16 from PySide import QtWebKit # to show html code (help menu)
编辑第54行原文可见下方
54 self.helpWidget.load(QUrl('./doc/help.html'))
这应该修改为
54 self.helpWidget.load('./doc/help.html')
免责声明这是一个 5 分钟的修复,查看项目主页以获得长期修复。
在最新版本的 sparta 和 Kali 上:
Linux kali 4.14.0-kali1-amd64 #1 SMP Debian 4.14.2-1kali1 (2017-12-04) x86_64 GNU/Linux
您需要修改:
评论:
16 #从 PyQt4 导入 QtWebKit
添加:
17 从 PySide 导入 QtWebKit
修改:
54 self.helpWidget.load('./doc/help.html')
遗憾的是,开发人员没有时间和资源来永久解决该问题。但是你可以在这里更新并兼容 Kali 版本
https://github.com/alexxn/sparta
安装python3-pyqt5.qtwebkit
解决方法在这里:
https://github.com/sourcepole/qgis-openlayers-plugin/issues/56#issuecomment-387223048
对我有用
我正在尝试启动一个依赖于 QtWebKit 的应用程序,但我无法导入该模块。我尝试通过启动 python 和导入其他模块来进行调试。它们都工作正常(例如 from PyQt4 import QtGui, QtCore)没有任何问题,但是当我 运行
from PyQt4 import QtGui, QtCore, QtWebKit
我收到以下信息:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name QtWebKit
我也试过以下方法无济于事(它们安装正常但没有解决问题):
apt-get install --reinstall python-qt4
apt-get install --reinstall python-2.7
这是应用程序的问题,sparta?。 Kali Rolling 所基于的 Debian Stretch 在 PyQt4 中有 mothballed QtWebKit。
最新版本不包含QtWebkit.so。
不幸的是,需要更新相关代码以使用 PyQt5 等效模块等替代方案。
可以在 Jun/2/2016
的 kali 错误报告站点上找到有关此问题的错误报告可选bodge/quick n 脏修复[适用于最新版本的 Kali]
与此同时,如果它是斯巴达并且你现在需要它的功能:
apt 安装 python-pyside.qtwebkit
从 https://github.com/SECFORCE/sparta 克隆一个副本到任何合适的地方,在我的例子中 /opt/recon/sparta,这会保留系统版本,因此它可以正常修复更新。
编辑 sparta.py
从第 22 行删除 QtWebKit
插入第 26 行到第 30 行的代码
21 try:
22 from PyQt4 import QtGui, QtCore
23 except:
24 print "[-] Import failed. PyQt4 library not found. \nTry installing it with: apt-get install python-qt4"
25 exit()
26 try:
27 from PySide import QtWebKit
28 except:
29 print "[-] Import failed. QtWebkit library not found. \nTry installing it with: apt-get install python-pyside.qtwebkit"
30 exit()
编辑ui/view.py
注释掉第 15 行
15 #from PyQt4 import QtWebKit # to show html code (help menu)
16 from PySide import QtWebKit # to show html code (help menu)
编辑第54行原文可见下方
54 self.helpWidget.load(QUrl('./doc/help.html'))
这应该修改为
54 self.helpWidget.load('./doc/help.html')
免责声明这是一个 5 分钟的修复,查看项目主页以获得长期修复。
在最新版本的 sparta 和 Kali 上:
Linux kali 4.14.0-kali1-amd64 #1 SMP Debian 4.14.2-1kali1 (2017-12-04) x86_64 GNU/Linux
您需要修改:
评论:
16 #从 PyQt4 导入 QtWebKit
添加:
17 从 PySide 导入 QtWebKit
修改:
54 self.helpWidget.load('./doc/help.html')
遗憾的是,开发人员没有时间和资源来永久解决该问题。但是你可以在这里更新并兼容 Kali 版本 https://github.com/alexxn/sparta
安装python3-pyqt5.qtwebkit
解决方法在这里: https://github.com/sourcepole/qgis-openlayers-plugin/issues/56#issuecomment-387223048
对我有用