Я использую python, чтобы очистить веб-страницу моей школы, но для этого мне нужно было сначала имитировать вход пользователя. Вот мой код:веб-страница python scraping, которая требует входа пользователя
import requests, lxml.html
s = requests.session()
url = "https://my.emich.edu"
login = s.get(url)
login_html = lxml.html.fromstring(login.text)
hidden_inputs = login_html.xpath(r'//form//input[@type="hidden"]')
form = {x.attrib["name"]:x.attrib["value"] for x in hidden_inputs}
form["username"] = "myusernamge"
form["password"] = "mypassword"
form["submit"] = "LOGIN"
response = s.post("https://netid.emich.edu/cas/loginservice=https%3A%2F%2Fmy.emich.edu%2Fc%2Fportal%2Flogin",form)
response = s.get("http://my.emich.edu")
f = open("result.html","w")
f.write(response.text)
print response.text
я ожидал, что response.text даст мне мою собственную страницу счета студента вместо того, что он дает мне бревно требование страницы. Может ли кто-нибудь помочь мне в этом вопросе? BTW это не домашнее задание
Вы можете сравнить запрос, сделанный вами с фактическим запросом, выполняемым вашим браузером? Вы пропустили какие-либо поля формы? –
@paradox Что произойдет, если вы снова спросите домашнюю страницу после того, как вы успешно разместили ее? Откуда вы знаете, что ваш пост прошел успешно? – David542
@paradox - также, это не сообщение url https://my.emich.edu/c/portal/login? – David542