Próbuję pobrać informacje z adresu URL wymagającego logowania NTLM.Python NTLM zaloguj się
Pierwotnie otrzymałem błąd 401 i po kilku poprawkach udało się wyciągnąć stronę z informacją, że wprowadziłem nieprawidłowe dane uwierzytelniające.
Nazwa użytkownika i hasło są prawidłowe, ale nie mogę ominąć strony z nieprawidłowymi danymi logowania.
Lgn2.py:
import urllib2
import HTTPNtlmAuthHandler
login = open('c:/temp/login.txt')
open = login.read()
to = open.split()
user = str(to[0])
password = str(to[1])
url = "http://INSERT URL HERE.com/"
passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, url, user, password)
auth_NTLM = HTTPNtlmAuthHandler.HTTPNtlmAuthHandler(passman)
opener = urllib2.build_opener(auth_NTLM)
urllib2.install_opener(opener)
response = urllib2.urlopen(url)
print(response.read())
Mam użytkownika zawierający \ stosując metodę powyżej nie dostać podwójny ukośnik w nazwie podczas drukowania. Czy powinienem trzymać go tam, gdzie druk będzie miał podwójny ukośnik odwrotny w nazwie, tak samo jak plik txt ma zapisaną nazwę użytkownika?
Plik txt jest tylko dokumentem txt zawierającym tylko: domena \ użytkownik \ nazwa hasło.
Drugi ukośnik odwrotny w środku nazwy użytkownika będzie częścią nazwy użytkownika.
Każda pomoc zostanie doceniona.
http://code.google.com/p/python-ntlm/ ma nazwę użytkownika, który wygląda jak „domena \ użytkownik”. Czy Twoja nazwa użytkownika zawiera domenę? –
tak bez domeny zwróci 401 –
Jakiego rodzaju mechanizmu uwierzytelniania używa Twoja strona internetowa? Jeśli nie można ustawić podstawowego uwierzytelnienia, musisz użyć skrótu - zobacz rozszerzony przykład na http://code.google.com/p/python-ntlm/ – Seth