这次我们用上篇文章讲到的方法来真正破解一下反爬虫策略,这两个案例是两个不同的网站,一个用的是 /_guard/auto.js,另一个用的是/_guard/delay_jump.js。经过解析发现这两个网站用的反爬虫策略基本是一模一样,只不过在js混淆和生成guardret的算法上有很细微的差别,由此看来,以后请求其他网站,如果也是这种不返回正确的数据而是返回了一个js,那么也可以直接套用下面的代码做一些细微的调整即可。
案例一
js内容
var _0xod4 = 'v1';
var _0x15af65 = _0x2155;
(function (_0x2e67e3, comparisonValue, stringArrayFunctionName, rightNum, checkVersion, shift, _0x465098) {
return _0x2e67e3 = _0x2e67e3 >> 0x1, shift = 'hs', _0x465098 = 'hs', function (stringArrayFunction, comparisonValue, _0x27a225, temp, _0x3316f1) {
var _0x160215 = _0x2155;
temp = 'tfi', shift = temp + shift, _0x3316f1 = 'up', _0x465098 += _0x3316f1, shift = _0x27a225(shift), _0x465098 = _0x27a225(_0x465098), _0x27a225 = 0x0;
var stringArray = stringArrayFunction();
while (!![] && --rightNum + comparisonValue) {
try {
temp = -parseInt(_0x160215(0x16c, '88G9')) / 0x1 + parseInt(_0x160215(0x14b, '4qz]')) / 0x2 + parseInt(_0x160215(0x133, '(9CA')) / 0x3 + -parseInt(_0x160215(0x196, 'qGDC')) / 0x4 + -parseInt(_0x160215(0x112, '2IOp')) / 0x5 + -parseInt(_0x160215(0x145, 'Uvtk')) / 0x6 * (-parseInt(_0x160215(0x13e, '(*tt')) / 0x7) + parseInt(_0x160215(0x116, '%mpD')) / 0x8 * (parseInt(_0x160215(0x176, '[gv0')) / 0x9);
} catch (_0x2280d7) {
temp = _0x27a225;
} finally {
_0x3316f1 = stringArray[shift]();
if (_0x2e67e3 <= rightNum) _0x27a225 ? checkVersion ? temp = _0x3316f1 : checkVersion = _0x3316f1 : _0x27a225 = _0x3316f1; else {
if (_0x27a225 == checkVersion['replace'](/[gVLixNQYGUptydrelmb=]/g, '')) {
if (temp === comparisonValue) {
stringArray['un' + shift](_0x3316f1);
break;
}
stringArray[_0x465098](_0x3316f1);
}
}
}
}
}(stringArrayFunctionName, comparisonValue, function (_0x1980fb, _0x2f3155, c, _0x16e044, _0x44a646, _0x277563, _0x3364d6) {
return _0x2f3155 = '\x73\x70\x6c\x69\x74', _0x1980fb = arguments[0x0], _0x1980fb = _0x1980fb[_0x2f3155](''), c = '\x72\x65\x76\x65\x72\x73\x65', _0x1980fb = _0x1980fb[c]('\x76'), _0x16e044 = '\x6a\x6f\x69\x6e', (0x161525, _0x1980fb[_0x16e044](''));
});
}(0x17a, 0xaa70c, _0x582a, 0xbf), _0x582a) && (_0xod4 = 0xbf);
var oooo = 0xf23d4, ooe;
function _0x582a() {
var _0x28bbb2 = (function () {
return [_0xod4, 'ULgvmpG1dQYbexNlGitVelexLlry==', 'nCk8oCkxdG', 'dCoeySof', 'W5NcP8oXW6BcHW', 'vCkeq8kLWO0', 'W4ZdHmo2WPSpWRNcLmkMaYewfa', 'FSkBp8oWW5W', 'mSobmY7cJW', 'W7dcGSohW6hcUq'].concat((function () {
return ['W4tcPmowWOK', 'W5VcK8omW4NcTq', 'd8obBmonxW', 'mWDdWPlcSsKNk10', 'oCo1tSkfCCkdywq1gqJdPa', 'DCoFgSoEW5K', 'emkjo8kRiq', 'W4BcJ8oYWOro', 'lmoWuSkKWPq', 'qSorrNtcVCoDjmkFW7vUxrm'].concat((function () {
return ['WROQW67cK30', 'W7/cT8oYWOqx', 'iZy/wSoeoW', 'v8ojiCoqW70', 'W5hcUCoNW6u', 'n8oAA8osxG', 'gSkJamkLW5y', 'W7xcLmobWQuJ', 'sSkmtCkp', 'CZ7dMru'].concat((function () {
return ['rayg', 'ymoOWOFdK8oNWOfhW4hdSW', 'W4ZcSmoNWP4X', 'WRNcJGRcH1m', 'Dmo1WQNdSSki', 'qvVdNqe1', 'WR9hWOGdBa', 'vmkvbmorWPO', 's8khjmo5W55EedS', 'W48pW5iiW78'].concat((function () {
return ['v8oHemoYW4m', 'p8k+omkFW4u', 'WOagW5FcJxJdUG', 'bbBdOsNcPq', 'kt4nWRGvd20GWQG', 'gcmzWQmK', 'gSkjnHVdPW', 'Amo8aem', 'C8o4heRdMCoq', 'h8k+mq'].concat((function () {
return ['d8otB8khamkfm1maqW', 'lcicWQ4', 'W4PvWO3dKcVcPSoDlSozjI/dMW', 'fmoBWPzXWOi', 'e8o4W5tcLCkj', 'jCowW6HQjq', 'wZ3cGIBdGa', 'W5VcNCksWRXE', 'n8oZBSkFyq', 'W4dcS8oDWOH2W7K'].concat((function () {
return ['aSoFASojzgRcM8k0WRZcVmoVWPHXw0mx', 'xCoBFSk0Eq', 'b8oxtCkiW5PrEd4pW6bxW4qB', 'umkJjmoVW4W', 'cSo7W6ne', 'W43cLSkYWPPd', 'W5BcPSoBWOTP', 'bCocq8keqa', 'lImHuCoj', 'aSo4DehcVSolW7LTWQ8BW4dcSW'].concat((function () {
return ['m8oIDSkczq', 'v8kCmSohsutcRCk5W6K', 'WOa8WRpcTSkj', 'qmocaL/dGSomW4ddLCoW', 'm8oZuCkpWOC', 'W7xcVSkgWPz/', 'WQZcRCocpCkn', 'dSk3huNcGCogzeywW5lcJxy', 'W44QW6yKW4e', 'kmohkapcN8odiSkU'].concat((function () {
return ['A8oKW4BdJ8oH', 'WOtcRSkNW6zW', 'hmkQivdcSmohA1m', 'fmoyF8kXWPW', 'fchdGYpcIa', 'jJKjWQW', 'WPb8WQaeua', 'pSoSW5/cRavFWO54WPqwrJW', 'z0quWO3cJa', 'WQxcL8o0imkhibO'].concat((function () {
return ['dCoeDmoFza', 'W7pdGCkSdMq', 'uI3cMJ7dHa', 'W5FcR8o2WPOw', 'iMdcGuJdLSotW5esW4L2WPXlCW', 'bSoOE8k7sW', 'f8kpedhdQSkdlW', 'wSkjdmovWOa', 'sWypW7KtW7HOWQVdRb43', 'rSobWPVdT8knbchcSwpcRuu'].concat((function () {
return ['ady9gCkR', 'FgDLdSkazrxdUCkQW6LXo3C', 'o8k1e8k2pW', 'WONcM8kvW5LoW6lcOmkn', 'nCocWR91WP8', 'W4/cVSosWP1bW77dUmoPW5lcGG', 'hauWFSog', 'w8oAW6xdJCoT', 'vqxcNrBdSG', 'W7ZcRConWReB'].concat((function () {
return ['W5mNW6yoW5/cJIrw', 'a8ouW77cLSkn', 'W7X7WRiRutBdPL7dGa', 'xmoxjfJdMG', 'W6P6WRG9qY3dVvJdKgar', 'W6D8WP4xvq', 'hSkpkGxdIq', 'cmoBy8k9WRm', 'W4qLFSk3nCkAW5FdI8oLWPyBW4HwWOlcGdpcSZpcKCk8B8oUa8kWF8kyWPldOCkIy2rLnYO', 'x8olW7VdIG'].concat((function () {
return ['WRJcOY7cLuK', 'A8o4avK', 'W6pcSCkMWP1x', 'WPvVWQqjx8kP', 'WPrdWPD/aa', 'vSolWOddLCkkfq', 'W4/cM8o8WPzx', 'FCoHWQ3dHmkT', 'W7TMq8oUvSoFWPVcKCkEWRK', 'W4BcO8kcWRjc'].concat((function () {
return ['W718umoZzW', 'WQOfW7BcIfi', 'W4X/WPxdIv4', 'ASopBCkWv0/dTmk/W44', 'WRmYW73cRNi', 'W63dR8kufKu', 'h8k5iSk9bt4NWP/dOSot', 'W5VcSSoXWR0NWORdMCkX', 'xmofW5RdKmoRWPNdVSkb', 'W544W7udW5i'].concat((function () {
return ['BmorzCk8rq', 'lmoAfapcGSoEnCk5WQy', 'BmovE8k8x0e', 'wmorWONdImoX', 'rCkkba', 't8ofWPJdLCoNWOfrW67dIq', 'W5/cPSoFWOz2', 'W5WJW4m5W54', 'W4r/WO4kvq', 'kmopCSo9wq'].concat((function () {
return ['WO16WRvFWP3dNN50pq8HWQnp', 'gIWVhCkx', 'wuldIaia', 'W4jhqCoWyW', 'i8kUW5ZcLmk4W4mlW5JdSx/dK8oclW', 'W7ldKmkshL4', 'W5DAWOZdOI0', 'yY/dNXNcRq', 'umkAtCoIvvNcP8ka', 'W5XNWPZdMLu'].concat((function () {
return ['lH8+zCo8', 'pHBdVctcMa', 'gJestmoc', 'jr3dMY/cQa', 'WOa5WPFcLSkW', 'ah7dU2JcPtGMW7KMW7ahWP5J', 'pCo6iJJcVW', 'W43cOCosW6BcRa', 'W5T4WQhdR3G', 'W4S6W6qmW44'].concat((function () {
return ['g8oLxCk6qq', 'W6XTWRuRrYVdOvtdIG', 'z8kcdSoqWRm', 'c8oiBSopC3C', 'WOreWPfYhxC', 'W4VcSmkrWQ9W', 'b8kvhdhdSCkD', 'qCoHmCoqW7e', 'qCkwsCkBWPJdVCoSW6ZdMmou', 'WP0jWQtcKmkbWQFcTHRcLa'].concat((function () {
return ['h8kKpmkUW74', 'emk+imkUmJGSWPq', 'WO1fWPOdFq', 'WPD3WQabrq', 'pmkRkaxdJW', 'omkHW5tdPGWrW5jgW6GVea', 'Bx/dSG4', 'W4/dI2ZdJs/cJfWaW7epd8kbAq', 'FrmpW6yV', 'qCkxjmo9W55F'].concat((function () {
return ['pSobfrm', 'cCoEaqpcPa', 'd8oQtmkzwq', 'Bf0BWPBcMW'];
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}()));
}());
_0x582a = function () {
return _0x28bbb2;
};
return _0x582a();
};(function () {
var _0x347e96 = _0x2155, OtvxHQ = {
'LRvAS': 'undefined', 'adWoW': function (_0x1345e8, _0x25be49) {
return _0x1345e8 === _0x25be49;
}, 'olxhc': 'object', 'XfMjK': _0x347e96(0x15e, 'c]oM'), 'kvVRH': function (_0x3fe49b, _0x51352a) {
return _0x3fe49b === _0x51352a;
}
},
that = typeof window !== OtvxHQ['LRvAS'] ? window : OtvxHQ[_0x347e96(0x194, 'Q^Rn')](typeof process, OtvxHQ[_0x347e96(0x199, '[gv0')]) && typeof require === OtvxHQ[_0x347e96(0x1bb, '88G9')] && OtvxHQ[_0x347e96(0x193, 'j$AR')](typeof global, _0x347e96(0x125, '%mpD')) ? global : this;
that[_0x347e96(0x19b, '[Fz[')](_0x456a4f, 0x7d0);
}());
if (oooo = oooo >> 0xc ^ 0xd5, ooe = window[_0x15af65(0x1a6, 'vTuG')] && window['navigator'][_0x15af65(0x12b, '9^H]')]) {
var i = 0x9;
for (oooo = oooo ^ i; i < oooo | 0x9; i > 0x0) {
ooe[_0x15af65(0x18d, 'mAYl')] = ooe[_0x15af65(0x154, 'WTpP')] + '?' + i;
}
;
}
;
function a(input) {
var _0x5f42ad = _0x15af65, _0x314d67 = {
'HKaoy': function (callee, _0x2af9d4) {
return callee(_0x2af9d4);
}
};
return _0x314d67[_0x5f42ad(0x1c7, '2IOp')](atob, input);
}
function b(input) {
var _0x1df6a9 = _0x15af65, _0x2056fd = {
'HKVGJ': function (callee, _0x55533f) {
return callee(_0x55533f);
}
};
return _0x2056fd[_0x1df6a9(0x130, '4qz]')](btoa, input);
}
function x(input, _0x56ee7b) {
var _0x4d7909 = _0x15af65, _0x453109 = {
'kkhgO': function (_0xa38b79, _0x106f39) {
return _0xa38b79 + _0x106f39;
}, 'ENirv': function (_0x2f779a, _0x416b4b) {
return _0x2f779a !== _0x416b4b;
}, 'OuMHF': _0x4d7909(0x151, '%mpD'), 'ocuSY': function (_0x44bb0a, _0x227faa) {
return _0x44bb0a ^ _0x227faa;
}
};
let output = '';
var _0x56ee7b = _0x453109[_0x4d7909(0x144, '%mpD')](_0x56ee7b, 'PTNo2n3Ev5');
for (let _0x4e905d = 0x0; _0x4e905d < input['length']; _0x4e905d++) {
if (_0x453109[_0x4d7909(0x1a7, 'L2qu')](_0x453109[_0x4d7909(0x1b2, 'dXSU')], _0x4d7909(0x1a5, 'bDNu'))) _0x98e486 = 0x2; else {
const charCode = _0x453109[_0x4d7909(0x10f, 'tDlO')](input[_0x4d7909(0x12a, 'WTpP')](_0x4e905d), _0x56ee7b[_0x4d7909(0x1b8, 'C8Y8')](_0x4e905d % _0x56ee7b['length']));
output += String[_0x4d7909(0x146, 'x3Jd')](charCode);
}
}
return output;
}
function getCookie(_0x3b7f01) {
var _0x364780 = _0x15af65, _0x3beb3d = {
'KFdkZ': function (_0x2180e3, _0x1a4794) {
return _0x2180e3 + _0x1a4794;
},
'YqPjx': function (_0x2636a6, _0x556bbf) {
return _0x2636a6 / _0x556bbf;
},
'CNOkx': 'length',
'ZIclv': function (_0x2f182f, _0x56ed22) {
return _0x2f182f === _0x56ed22;
},
'OONhB': function (_0x5beff8, _0x1299db) {
return _0x5beff8 % _0x1299db;
},
'AwkWR': _0x364780(0x118, 'KYIJ'),
'jYAkL': _0x364780(0x1cb, 'vTuG'),
'VQaRh': _0x364780(0x14d, 'bDNu'),
'NMAkx': 'vjIlM',
'fLPGa': function (_0x2e0f5e, _0x38e106) {
return _0x2e0f5e !== _0x38e106;
},
'UvztI': 'RwimX',
'AQFLk': _0x364780(0x1a8, '6pp^'),
'HbuOQ': _0x364780(0x1b3, 'N@4a'),
'jghBr': 'function',
'LevWI': _0x364780(0x1ba, 'C8Y8'),
'MDeJg': _0x364780(0x123, '6pp^'),
'Pmmqk': _0x364780(0x121, 'vTuG'),
'pGWgT': function (_0x42ad32, _0x5e853a) {
return _0x42ad32 < _0x5e853a;
},
'ImzXH': 'fmhyk',
'YzmCn': _0x364780(0x1ae, 'C8Y8'),
'Siujv': function (callee, _0x5ed63e) {
return callee(_0x5ed63e);
},
'niHYb': function (_0x559093, _0x31986b) {
return _0x559093 + _0x31986b;
},
'cHoBO': _0x364780(0x161, '0uvs'),
'EdjQY': function (_0x2eeaa9, _0x357945) {
return _0x2eeaa9 === _0x357945;
},
'BzwaH': _0x364780(0x1b6, 'Tp6i'),
'uasJp': function (callee, _0x17e6e3, _0x2e237a) {
return callee(_0x17e6e3, _0x2e237a);
},
'ewLbp': _0x364780(0x16a, 'x3Jd'),
'pJXZY': function (_0x4177e6, _0x535674) {
return _0x4177e6 % _0x535674;
},
'jqnhl': 'AchTl',
'lXxdg': function (_0x227829, _0x3d5e25) {
return _0x227829 === _0x3d5e25;
},
'msqjZ': _0x364780(0x1a2, 'KYIJ'),
'uXnJi': function (callee, _0x4f23d9) {
return callee(_0x4f23d9);
},
'XfSjO': _0x364780(0x186, 'vTuG'),
'HEBzN': function (_0x2e7163, _0x372a75) {
return _0x2e7163 === _0x372a75;
},
'cmEWd': _0x364780(0x150, '!MEF'),
'tdCPw': _0x364780(0x177, 'QGJv'),
'dDgnK': _0x364780(0x131, 'I^i0'),
'gtzza': function (callee) {
return callee();
},
'uvSlR': function (_0x3f7747, _0x358f25) {
return _0x3f7747 == _0x358f25;
}
}, _0x2d8df0 = (function () {
var _0x430740 = _0x364780;
if (_0x3beb3d['fLPGa'](_0x3beb3d[_0x430740(0x137, '&H0m')], _0x3beb3d['UvztI'])) {
if (BeBXaA['KFdkZ']('', BeBXaA[_0x430740(0x119, 'jC3%')](counter, counter))[BeBXaA[_0x430740(0x188, 'n5M^')]] !== 0x1 || BeBXaA['ZIclv'](BeBXaA[_0x430740(0x197, 'E&UR')](counter, 0x14), 0x0)) debugger; else debugger;
} else {
var firstCall = !![];
return function (context, _0x2b530e) {
var _0x4d5edd = _0x430740, _0x10f5e3 = {
'uioiU': function (callee, _0x252f8d) {
return callee(_0x252f8d);
},
'PAFGQ': function (_0x449472, _0x85930d) {
return _0x449472 !== _0x85930d;
},
'RBhiH': _0x3beb3d['AwkWR'],
'CUqKa': _0x3beb3d[_0x4d5edd(0x149, 'Tp6i')],