滑块验证码
function slide (id) {
var slider = document.getElementById(id), // 获取滑块
container = slider.parentNode; // 获取滑块的父类
console.log(slider); // <span id="nc_1_n1z" class="nc_iconfont btn_slide"></span>
var rect = slider.getBoundingClientRect(), // 获取滑块的 x y with height 等,见上图
x0 = rect.x || rect.left,
y0 = rect.y || rect.top,
w = container.getBoundingClientRect().width, // 获取滑动槽的长度
x1 = x0 + w,
y1 = y0;
console.log(rect)
var mousedown = document.createEvent("MouseEvents"); // 创建鼠标MouseEvents事件
mousedown.initMouseEvent("mousedown", true, true, window, 0,
x0, y0, x0, y0, false, false, false, false, 0, null); // 初始化鼠标位置
slider.dispatchEvent(mousedown);
var mousemove = document.createEvent("MouseEvents");
mousemove.initMouseEvent("mousemove", true, true, window, 0,
x1, y1, x1, y1, false, false, false, false, 0, null);
slider.dispatchEvent(mousemove); // 滑块执行移动
}
slide('nc_1_n1z');
python 执行js
import execjs
js_context = execjs.compile(open("xxxxxxxxxxxxxxxxx.js").read())