使用QtWebKit显示经过NTLM身份验证的网页

时间:2016-08-11 21:48:03

标签: python qt ntlm qtwebkit qwebview

我的应用程序需要显示使用NTLM身份验证的网页。我以前编写过NTLM身份验证方法,但仅用于向/从站点传递数据,而不是在QWebView中显示站点。同样,我过去编写了应用程序(使用基本身份验证或无身份验证),使用QWebView显示网页没有问题。

我很难将这两种方法放在一起,以显示一个使用NTLM身份验证的网页。

这是我的方法:

Web_Viewer = QtWebKit.QWebView()
Web_Viewer.setGeometry(0, 0, 1920, 1080)

URL = "http://www.somewebsitewithNTLMauth.com/pages/Home.aspx"
User = "domain\username"
Password = "Password"

Password_Manager = urllib.request.HTTPPasswordMgrWithDefaultRealm()
Password_Manager.add_password(None, URL, User, Password)

Authentication_NTLM = HTTPNtlmAuthHandler.HTTPNtlmAuthHandler(Password_Manager)

Opener = urllib.request.build_opener(Authentication_NTLM)

#This is where I get stuck
#Normally I'd load the URL and then show it, as such:

Web_Viewer.load(QtCore.QUrl(URL))
Web_Viewer.show()

我知道Web_Viewer.load()并没有使用NTLM身份验证,但我不确定如何使用身份验证来显示页面。

0 个答案:

没有答案