Справочная информация: я пытаюсь автоматизировать вход в систему локального интернет-провайдера, используя простой запрос в python (без селена, это последнее средство, поскольку я пытаюсь изучить и другие способы).
После проверки веб-сайта Кнопка отправки вызывает функцию validateForm()
.
function validateForm(){
var input=true;
var uname = "?"+document.login.Username.value+"+/@";
var pwd = "?"+document.login.Password.value+"+/@";
document.login.LoginName.value=encodeURIComponent(uname);
document.login.LoginPassword.value=encodeURIComponent(pwd);
if (input==true&&document.login.checker.checked)
toMem(this);
}
function toMem(a) {
newCookie('theName', document.login.Username.value); // add a new cookie as shown at left for every
newCookie('theEmail', document.login.Password.value); // field you wish to have the script remember
}
function newCookie(Username,value,days) {
var days = 30; // the number at the left reflects the number of days for the cookie to last
// modify it according to your needs
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString(); }
else var expires = "";
document.cookie = Username+"="+value+expires+"; path=/";
}
Нет, куда он отправляет какой-либо запрос.
Веб-сайт не выполняет никаких запросов XHR. Я не могу понять asp, как они заставляют работать логин. Я нашел один запрос из «другой» вкладки сети (chrome инструменты разработчика). Откуда он генерирует этот запрос !!!
fetch("http://ip:port/Sristi3/SRISTI/loginUI.do2", {
"headers": {
"accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
"accept-language": "en-US,en;q=0.9,bn;q=0.8",
"cache-control": "no-cache",
"content-type": "application/x-www-form-urlencoded",
"pragma": "no-cache",
"upgrade-insecure-requests": "1"
},
"referrer": "http://ip:port/Sristi3/SRISTI/Login.jsp?",
"referrerPolicy": "no-referrer-when-downgrade",
"body": "Username=username&Password=password&LoginName=encodedusername&LoginPassword=encodedpass",
"method": "POST",
"mode": "cors",
"credentials": "include"
});
Я попытался просто вставить запрос в консоль, но это также не привело к входу в систему. Вернул promise
с [[PromiseStatus]]: "rejected"
и [[PromiseValue]]: TypeError: Failed to fetch, message: "Failed to fetch", stack: "TypeError: Failed to fetch"
. Что и где искать? Любая помощь?