したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

1662 ◆adhRKFl5jU:2009/03/17(火) 23:37:48
(function(){
var id = "";
var password = "";
var start = 1, end = 260;
var servername = ""
var CreateHTTPObject = function(){
return new ActiveXObject("Msxml2.ServerXMLHTTP.6.0");
};

var Utility = {
GetSearchString: function(obj){
var vec = [];
for(var i in obj){
if(obj.hasOwnProperty(i)){
vec.push(i + "=" + obj[i]);
}
}
return vec.join("&");
},
forEach: function(vec, func){
vec = [].concat(vec);
var len = vec.length;
for(var i = 0; i < len; ++i){
if(func(vec[i])){
return;
}
}
},
DecodeHTML: function(str){
return str.replace(/&([a-zA-Z]+);/g, function($1, $2){
return ({
amp: "&",
quote: "\"",
gt: ">",
lt: "<"
})[$2];
});
}
};

var Downloader = function(){
this.cookie = "";
};

Downloader.prototype.GetCookie = function(){
var http = CreateHTTPObject();
http.open("POST", "http://" + servername + "/joi_test/joi2/?action_user_index=true", false);
http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

http.send(Utility.GetSearchString({
action_user_auth_proc: "true",
id: id,
pass: password,
submit: encodeURI("ログイン")
}));

var cookie = http.getResponseHeader("Set-Cookie");
cookie.match(/(JoiSESSID)=([^;]+);/);

this.cookie = RegExp.$1 + "=" + RegExp.$2;
};
Downloader.prototype.DownloadData = function(page){
var http = CreateHTTPObject();

http.open("GET", "http://" + servername + "/joi_test/joi2/?action_user_probresult_detail=true&jid=" + page);
http.setRequestHeader("Cookie", this.cookie);
http.send();

var html = http.responseText;
if(html.match(/<h2>エラーが発生しました<\/h2>/) && html.match(/<li>error<\/li>/)){
return null;
}else{
var lines = html.split("\n");
var src = Downloader.GetSource(lines);
var qid = Downloader.GetQuestionId(lines);
var id = page;
var language = Downloader.GetLanguage(lines);
var point = Downloader.GetPoint(lines);
var uptime = Downloader.GetUpTime(lines);
var results = Downloader.GetResults(lines);

return {
src: src,
qid: qid,
id: id,
language: language,
point: point,
uptime: uptime,
results: results
};
}
};


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板