Captcha Counter

Counts the number of hits remaining before you get a captcha

2014-05-13 या दिनांकाला. सर्वात नवीन आवृत्ती पाहा.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

You will need to install an extension such as Tampermonkey to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript==
// @name       Captcha Counter
// @version    0.2
// @match      https://www.mturk.com/mturk/*
// @copyright  2014+, Tjololo
// @require     http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
// @namespace https://greasyfork.org/users/710
// @description Counts the number of hits remaining before you get a captcha
// ==/UserScript==

var hitId = "";
if (document.getElementsByName("hitId")[0])
    hitId = document.getElementsByName("hitId")[0].value;
var captchanum = 35;
var count = 0;
if (GM_getValue("captcha_counter")){
    count = GM_getValue("captcha_counter");
    console.log("Count: "+count);
}


if (!this.GM_getValue || (this.GM_getValue.toString && this.GM_getValue.toString().indexOf("not supported")>-1)) {
    this.GM_getValue=function (key,def) {
        return localStorage[key] || def;
        };
    this.GM_setValue=function (key,value) {
        return localStorage[key]=value;
        };
}

if(window.location.href.indexOf("accept") > -1) {
    if ($('input[name="userCaptchaResponse"]').length > 0) {
    	count = 0;
    	GM_setValue("captcha_counter",count);
        console.log("Captcha found: "+count);
	}
    else{
    	if (hitId != "" && $('div[class="message error"]').length == 0){
	        console.log("Accepted Hit");
	        count+=1;
	        GM_setValue("captcha_counter",count);
            console.log((captchanum-count)+" hits left until captcha!");
            if (count == 35)
                alert("Next hit is a captcha!");
	        //alert((captchanum-count)+" hits left until captcha!");
	    }
	    else{
	        console.log("No hit accepted");
	    }
    }
    
}
if (captchanum-count == 1)
    captchaCountStr = (captchanum-count)+" hit left until captcha!";
else if (captchanum-count == 0)
    captchaCountStr = "Last hit before captcha!";
else
    captchaCountStr = (captchanum-count)+" hits left until captcha!";

$('#theTime').parent().parent().parent().append('<tr><td align="left" valign="top" class="title_orange_text" nowrap="" style="padding-top: 3px; padding-left: 5px;"><b>Captcha:</b> <span>' + captchaCountStr + '</span></td></tr>');