Существует этот сайт, на котором есть результаты некоторых соревнований, но дело в том, что я забыл номер билета в зале. Если я укажу имя там ("Тест") и скажу "9245" в номере билета зала, он показывает результат этого номера билета в зале не делает ничего имени. Но результат не мой, я знаю, что номер моего билета в зале составляет 4 цифры. Мне было интересно, могу ли я что-то программировать, чтобы он тестировал все 4-значные числа и проверял, является ли имя, показанное в результате, =="Daksh"
если это так возвращает номер билета в зале. Это возможно? Кроме того, я проверил источник страницы и нашел связанный http://dreamscholarsleague.com/js/results.js
Могу ли я что-то сделать, чтобы найти номер билета в зале?
Как это:
function check(i){
$.post('http://dreamscholarsleague.com/php/results.php', JSON.stringify({ hallticket:i, name: 'dfd'}))
.done(function(d){
try{
var result = JSON.parse(d)[0];
var name = result["studentName"].toLowerCase();
}
catch(e){
console.log("Parse error for "+i);
if(i<9999)check(i+1);
return;
}
if(name.indexOf("daksh")!==-1){
console.log("Found! " + result);
}
else{
console.log("Checked "+i);
if(i<9999)check(i+1);
}
})
.fail(function(){
console.log("[post] error "+i);
if(i<9999)check(i+1);
});
}
check(1000);
Вы можете сделать что-то подобное, если вы можете использовать jquery:
function make_ajax(name,hallticket, max){
$.ajax({
url: "http://dreamscholarsleague.com/php/results.php",
type: "post",
data: '{"name":"'+name+'","hallticket":"'+hallticket+'"}',
dataType: 'json',
contentType: "application/json",
success: function(data){
var name = data[0]["studentName"];
console.log(name,hallticket);
if(name.indexOf("Daksh")!==-1){
alert("Found! " + hallticket);
}
},
complete:function(){
console.log(hallticket)
if(hallticket<max) make_ajax(name,hallticket+1,max)
}
});
}
make_ajax("Daksh",1000, 2500);
make_ajax("Daksh",2500, 5000);
make_ajax("Daksh",5000, 7500);
make_ajax("Daksh",7500, 10000);
Тем не менее, пройдет много времени.
F12
)