- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在编写 PyQt(功能强大的 Qt 库的 Python 绑定(bind))应用程序,我的应用程序的一小部分需要 Web 浏览器(提示,OAuth)。所以我开始使用 QtWebkit,顺便说一句,它很棒。唯一的障碍是我想允许代理后面的用户使用我的应用程序。
我已经阅读了 QtNetwork 包中的 QNetworkProxy 类,并认为它应该可以解决问题。唯一的问题是当我创建和应用代理时,它在 HTTP 上工作得很好,但是当我向它传递一个 HTTPS (SSL) URL 时,它会给我以下错误:
QSslSocket: cannot call unresolved function SSLv3_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_error_string
注意:当我运行...
QtNetwork.QSslSocket.supportsSsl()
.. 它返回 false。这就是我的问题的证明。
这是我的主要代码(就在我创建 QApplication 之前):
proxy = QtNetwork.QNetworkProxy()
proxy.setType(QtNetwork.QNetworkProxy.Socks5Proxy)
proxy.setHostName('localhost');
proxy.setPort(1337)
QtNetwork.QNetworkProxy.setApplicationProxy(proxy);
我从 here 得到代码但是这个例子是用 C++ 写的,而不是 Python,所以我不太确定我是否正确翻译了它。这可能是问题所在。
编辑:我已经在 SOCKS5 和 HTTP 代理上试过了,它们都抛出了同样的错误。
最佳答案
我在使用 Python 2.6 和 PyQt 4.7.4 的 Windows XP(32 位)上工作。原因...
QtNetwork.QSslSocket.supportsSsl()
返回 false 是因为我没有在我的系统中安装 OpenSSL 二进制文件。
为了解决问题我去了here下载二进制文件。在正确安装之前,我还必须从 Microsoft 安装 Visual C++ 2008 Redistributables。
现在一切正常!
关于python - 代理背后的 PyQt + QtWebkit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3444507/
我正在寻找匹配 /(?=\W)(gimme)(?=\W)/gi 或类似的东西。 \W 应该是零宽度字符来包围我的实际匹配项。 也许有一些背景。我想用添加的文字填充替换某些单词(总是 \w+),但前提是
如何在不使用 Intent 连接到 VPN 服务的情况下以编程方式检测流量是否正在通过 VPN。有系统调用吗? 最佳答案 这个有效: private boolean checkVPN() {
我是一名优秀的程序员,十分优秀!