Python请求:遵循链接

Python请求:遵循链接,python,ntlm,python-requests,Python,Ntlm,Python Requests,假设我有以下脚本: import requests username = 'myUser' password = 'myPswd' url = 'https://NTLMwebsite/base.com' nextPage = 'https://NTLMwebsite/base/next.com' r = requests.get(url, auth=HttpNtlmAuth(username,password)) #Cool, but how do I access nextPage?

假设我有以下脚本:

import requests

username = 'myUser'
password = 'myPswd'
url = 'https://NTLMwebsite/base.com'
nextPage = 'https://NTLMwebsite/base/next.com'

r = requests.get(url, auth=HttpNtlmAuth(username,password))
#Cool, but how do I access nextPage?
通过NTLM后,如何请求另一页?认证。如果我只是通过:
requests.get(nextPage,auth=HttpNtlmAuth(username,password))
执行另一个请求,那么它会将我重定向回基本网站,因为它创建了一个新请求,并且必须重新验证NTLM身份验证

一旦你绕过NTLM,有人知道如何跟踪链接吗

“NTLM验证连接,而不是单个请求”,根据。这意味着您必须重复使用相同的请求,或者对每个请求进行身份验证

您应该能够使用“请求”获得可以重用的持久连接,并使设置身份验证更容易。下面的代码演示了正在发生的事情,应该为您提供一些可供构建的内容:

import requests
from requests_ntlm import HttpNtlmAuth

username = 'myUser'
password = 'myPswd'
url = 'https://NTLMwebsite/base.com'
nextPage = 'https://NTLMwebsite/base/next.com'

s = requests.Session()

s.auth = HttpNtlmAuth(username, password)

r1 = s.get(url)
r2 = s.get(nextPage)
print 'r1', r1
print 'r2', r2
print 'Session using same connection:', r1.connection == r2.connection

r1 = requests.get(url, auth=HTTPBasicAuth(username, password))
r2 = requests.get(nextPage, auth=HTTPBasicAuth(username, password))
print 'r1', r1
print 'r2', r2
print 'Non Session using same connection:', r1.connection == r2.connection

非常感谢。这就成功了。我将查找一般会话,以便将其应用于其他语言。