有this网站,其中有一些比赛的结果,但问题是我忘记了我的门票号码如果我在那里输入名字("测试")并把说" 9245"在大厅门票号码中显示结果但是该门票号码没有做任何名称。但结果不是我的,我知道我的门票号是4位数。我想知道我是否可以编程一些东西,以便测试所有4位数字,并检查结果中显示的名称是=="Daksh"
,如果是,则返回门票号码。这可能吗?另外,我检查了网页的来源,找到了链接的http://dreamscholarsleague.com/js/results.js
我可以做一些事情,以便找到我的门票号码吗?
答案 0 :(得分:2)
像这样:
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);
答案 1 :(得分:1)
如果你可以使用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);
虽然会花很多时间。