Python, использующий urllib для аутентификации на веб-странице - PullRequest
1 голос
/ 24 декабря 2011

Я читал другие посты на эту тему, но я думаю, что моя ситуация немного уникальна.Я пытаюсь использовать python для считывания моих оценок с сайта школьного центра доступа к дому, но я думаю, что в том, как они запрограммировали его, есть что-то своеобразное, вот код, который я использую:1003 * Всегда печатается «Правильно», независимо от того, что я ввожу для имени пользователя и пароля.Каждый f.read () возвращает только пустую строку.Я действительно застрял здесь, спасибо за вашу помощь!

1 Ответ

3 голосов
/ 24 декабря 2011

urlopen возвращает файл-подобный объект. В частности, вы можете вызвать read() только один раз (без аргументов - вы можете читать кусками, передавая размер read, но) - последующие вызовы read() вернут None, потому что вы ' мы исчерпали его (и в отличие от обычных файловых объектов, метод seek отсутствует). Вы должны сохранить результат в переменной.

content = f.read()
if "The following errors occurred while attempting to log in:" in content:
    print "Login failed."
    print content
else:
    print "Correct!"
    print content
...