自己研究: jquery拖拽滑動驗證碼外掛程式 slideunlock.js
原理:(別人說)
響應時間,拖拽速度,時間,位置,軌跡,重試次數等。
這些因素能夠構成乙個取樣結果或者辨識特性。
只獲取到滑動時間,滑動的長度。
效果:
html頁面
>>
拖動滑塊驗證
css樣式
#slider#slider_bg
#label
#labeltip
js效果
/*** jquery plugin -- jquery.slideunlock.js
* www.sucaijiayuan.com
* created: march 27, 2016
*/;(function ($,window,document,undefined) ;
var opts = ;
opts = $.extend(opts, options||{});
//$elm
me.elm = $elm;
//opts
me.opts = opts;
//是否開始滑動
me.swipestart = opts.swipestart;
//最小值
me.min = opts.min;
//最大值
me.max = opts.max;
//當前滑動條所處的位置
me.index = opts.index;
//是否滑動成功
me.isok = opts.isok;
//滑塊寬度
me.labelwidth = me.elm.find('#label').width();
//滑塊背景
me.sliderbg = me.elm.find('#slider_bg');
//滑鼠在滑動按鈕的位置
me.lableindex = opts.lableindex;
//success
me.success = success;
}sliderunlock.prototype.init = function () ).on("mousemove", function (event) ).on("mouseup", function (event) ).on("mouseout", function (event) ).on("touchstart", function (event) ).on("touchmove", function (event) ).on("touchend", function (event) );
};/**
* 滑鼠/手指接觸滑動按鈕
*/sliderunlock.prototype.handerin = function () ;
/*** 滑鼠/手指移出
*/sliderunlock.prototype.handerout = function ()
};/**
* 滑鼠/手指移動
* @param event
* @param type
*/sliderunlock.prototype.handermove = function (event, type) else
me.move();}};
/*** 滑鼠/手指移動過程
*/sliderunlock.prototype.move = function ()
if (me.index < 0)
if (me.index+me.labelwidth+2 == me.max && me.max > 0 && me.isok) );
me.success();
}me.updateview();
};/**
* 更新檢視
*/sliderunlock.prototype.updateview = function () ;
/*** 重置slide的起點
*/sliderunlock.prototype.reset = function () ,me.opts.duration);
me.elm.find("#label").animate(, me.opts.duration)
.next("#labletip").animate(, me.opts.duration);
me.updateview();
};/**
* 檢測元素是否存在
* @param elm
* @returns
*/sliderunlock.prototype.checkelm = function (elm) else
};/**
* 檢測傳入引數是否是function
* @param fn
* @returns
*/sliderunlock.prototype.checkfn = function (fn) else
};window['sliderunlock'] = sliderunlock;
})(jquery, window, document);
兩個鏈結
滑動驗證碼
通過檢視網頁可以發現滑動驗證碼的由兩張組成。需要注意的是在檢視是可以發現每張是由52張小組合而成。而每一張小其實都是一樣的,通過偏移拼接出了正常的。background images driver.find elements by xpath div path location x int re.f...
關於滑動驗證碼
首先前台呼叫後台介面,獲取y座標,及裁剪的小圖,混淆拼接的。x座標儲存到資料庫。返回驗證碼json jobject y positiony y座標 jobject array string.join array jobject imgx imgwidth 寬 jobject imgy imgheig...
selenium滑動驗證碼
最好是在測試的時候遮蔽掉滑動驗證。滑動驗證碼的驗證,可用selneium的click and hold 和move by offset來實現,其中click and hold target perform 模擬滑鼠左鍵按下,抓住滑動塊,move by offset來實現滑動塊的相對位移 action...