mirror of
https://github.com/shufflewzc/faker3.git
synced 2024-11-15 00:09:20 +08:00
sync
This commit is contained in:
parent
5c5604ce27
commit
abb1a9794c
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
18
jd_dplh1020.js
Normal file
18
jd_dplh1020.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,44 +1,46 @@
|
|||||||
function setBaseCookie() {
|
function setBaseCookie() {
|
||||||
var cookie = [];
|
var cookie = [];
|
||||||
|
|
||||||
function genUuid() {
|
function genUuid() {
|
||||||
return new Date().getTime() + "" + parseInt(2147483647 * Math.random());
|
return new Date().getTime() + '' + parseInt(2147483647 * Math.random());
|
||||||
|
}
|
||||||
|
|
||||||
|
function setCookie(e, t, i) {
|
||||||
|
if (e) {
|
||||||
|
var n = '';
|
||||||
|
if (i) {
|
||||||
|
var a = new Date();
|
||||||
|
a.setTime(a.getTime() + i), (n = ';expires=' + a.toGMTString());
|
||||||
|
}
|
||||||
|
document.cookie = e + '=' + t + n + ';path=/;domain=jd.com;';
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function setCookie(e, t, i) {
|
function setJdv(e, t) {
|
||||||
if (e) {
|
var i = isPrey(10) && (!e || e.length > 400) ? t + '|direct|-|none|-|' + new Date().getTime() : e;
|
||||||
var n = "";
|
setCookie('__jdv', i, 1296000000);
|
||||||
if (i) {
|
}
|
||||||
var a = new Date;
|
|
||||||
a.setTime(a.getTime() + i),
|
|
||||||
n = ";expires=" + a.toGMTString()
|
|
||||||
}
|
|
||||||
document.cookie = e + "=" + t + n + ";path=/;domain=jd.com;";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function setJdv(e, t) {
|
function isPrey(e) {
|
||||||
var i = isPrey(10) && (!e || e.length > 400) ? t + "|direct|-|none|-|" + new Date().getTime() : e;
|
if (e >= 100) return !0;
|
||||||
setCookie("__jdv", i, 1296000000);
|
var t = uuid,
|
||||||
}
|
r = t.substr(t.length - 2);
|
||||||
|
return !!r && 1 * r < e;
|
||||||
|
}
|
||||||
|
|
||||||
function isPrey(e) {
|
var r = 122270672,
|
||||||
if (e >= 100) return !0;
|
i = genUuid(),
|
||||||
var t = uuid, r = t.substr(t.length - 2);
|
s = parseInt(new Date().getTime() / 1e3);
|
||||||
return !!r && 1 * r < e;
|
var uuid = i;
|
||||||
}
|
|
||||||
|
|
||||||
var r = 122270672, i = genUuid(), s = parseInt(new Date().getTime() / 1e3);
|
setCookie('__jda', [r, i, s, s, s, 1].join('.'), 15552000000);
|
||||||
var uuid = i;
|
setCookie('__jdb', [r, 1, i + '|' + 1, s].join('.'), 1800000);
|
||||||
|
var j = encodeURIComponent([r, 'direct', '-', 'none', '-', new Date().getTime()].join('|'));
|
||||||
|
setJdv(j, r);
|
||||||
|
setCookie('__jdc', r);
|
||||||
|
setCookie('mba_muid', encodeURI(i));
|
||||||
|
|
||||||
setCookie("__jda", [r, i, s, s, s, 1].join("."), 15552000000);
|
return cookie.join('');
|
||||||
setCookie("__jdb", [r, 1, i + "|" + 1, s].join("."), 1800000);
|
|
||||||
var j = encodeURIComponent([r, "direct", "-", "none", "-", new Date().getTime()].join("|"));
|
|
||||||
setJdv(j, r);
|
|
||||||
setCookie("__jdc", r);
|
|
||||||
setCookie("mba_muid", encodeURI(i));
|
|
||||||
|
|
||||||
return cookie.join('');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports.setBaseCookie = setBaseCookie
|
module.exports.setBaseCookie = setBaseCookie;
|
||||||
|
2896
utils/baseUtils.js
2896
utils/baseUtils.js
File diff suppressed because it is too large
Load Diff
284
utils/jsToken.js
Normal file
284
utils/jsToken.js
Normal file
@ -0,0 +1,284 @@
|
|||||||
|
var axios = require('axios');
|
||||||
|
var qs = require('qs');
|
||||||
|
|
||||||
|
function TDEncrypt(l) {
|
||||||
|
l = JSON.stringify(l);
|
||||||
|
l = encodeURIComponent(l);
|
||||||
|
var k = '',
|
||||||
|
f = 0;
|
||||||
|
do {
|
||||||
|
var h = l.charCodeAt(f++);
|
||||||
|
var d = l.charCodeAt(f++);
|
||||||
|
var a = l.charCodeAt(f++);
|
||||||
|
var b = h >> 2;
|
||||||
|
h = ((h & 3) << 4) | (d >> 4);
|
||||||
|
var e = ((d & 15) << 2) | (a >> 6);
|
||||||
|
var c = a & 63;
|
||||||
|
isNaN(d) ? (e = c = 64) : isNaN(a) && (c = 64);
|
||||||
|
k =
|
||||||
|
k +
|
||||||
|
'23IL<N01c7KvwZO56RSTAfghiFyzWJqVabGH4PQdopUrsCuX*xeBjkltDEmn89.-'.charAt(b) +
|
||||||
|
'23IL<N01c7KvwZO56RSTAfghiFyzWJqVabGH4PQdopUrsCuX*xeBjkltDEmn89.-'.charAt(h) +
|
||||||
|
'23IL<N01c7KvwZO56RSTAfghiFyzWJqVabGH4PQdopUrsCuX*xeBjkltDEmn89.-'.charAt(e) +
|
||||||
|
'23IL<N01c7KvwZO56RSTAfghiFyzWJqVabGH4PQdopUrsCuX*xeBjkltDEmn89.-'.charAt(c);
|
||||||
|
} while (f < l.length);
|
||||||
|
return k + '/';
|
||||||
|
}
|
||||||
|
|
||||||
|
function getAppVersionFromUserAgent(userAgent) {
|
||||||
|
const mozillaIndex = userAgent.indexOf('Mozilla/');
|
||||||
|
if (mozillaIndex !== -1) {
|
||||||
|
return userAgent.substring(mozillaIndex + 8);
|
||||||
|
}
|
||||||
|
return userAgent;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getCurrentPageUrl(inputUrl) {
|
||||||
|
let l = inputUrl.startsWith('https:') ? 'https://' : 'http://';
|
||||||
|
let d = '';
|
||||||
|
|
||||||
|
try {
|
||||||
|
const queryIndex = inputUrl.indexOf('?');
|
||||||
|
if (queryIndex > 0) {
|
||||||
|
inputUrl = inputUrl.substring(0, queryIndex);
|
||||||
|
}
|
||||||
|
|
||||||
|
d = inputUrl.substring(l.length);
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error parsing URL:', error);
|
||||||
|
}
|
||||||
|
|
||||||
|
return d;
|
||||||
|
}
|
||||||
|
|
||||||
|
async function getJsToken(
|
||||||
|
userAgent = 'jdapp;android;11.2.8;;;Mozilla/5.0 (Linux; Android 10; ONEPLUS A5010 Build/QKQ1.191014.012; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/76.0.3809.89 MQQBrowser/6.2 TBS/045230 Mobile Safari/537.36',
|
||||||
|
url = 'https://plus.m.jd.com/',
|
||||||
|
bizId = 'JD-PLUS',
|
||||||
|
) {
|
||||||
|
const d = TDEncrypt({
|
||||||
|
ts: { deviceTime: Date.now(), deviceEndTime: Date.now() + 10 },
|
||||||
|
ca: {
|
||||||
|
tdHash: '5b7096a993d442aef38ceb90cce4b485',
|
||||||
|
contextName: 'webgl,experimental-webgl',
|
||||||
|
webglversion: 'WebGL 1.0 (OpenGL ES 2.0 Chromium)',
|
||||||
|
shadingLV: 'WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)',
|
||||||
|
vendor: 'WebKit',
|
||||||
|
renderer: 'WebKit WebGL',
|
||||||
|
extensions: [
|
||||||
|
'ANGLE_instanced_arrays',
|
||||||
|
'EXT_blend_minmax',
|
||||||
|
'EXT_clip_control',
|
||||||
|
'EXT_color_buffer_half_float',
|
||||||
|
'EXT_depth_clamp',
|
||||||
|
'EXT_disjoint_timer_query',
|
||||||
|
'EXT_float_blend',
|
||||||
|
'EXT_frag_depth',
|
||||||
|
'EXT_polygon_offset_clamp',
|
||||||
|
'EXT_shader_texture_lod',
|
||||||
|
'EXT_texture_compression_bptc',
|
||||||
|
'EXT_texture_compression_rgtc',
|
||||||
|
'EXT_texture_filter_anisotropic',
|
||||||
|
'EXT_texture_mirror_clamp_to_edge',
|
||||||
|
'EXT_sRGB',
|
||||||
|
'KHR_parallel_shader_compile',
|
||||||
|
'OES_element_index_uint',
|
||||||
|
'OES_fbo_render_mipmap',
|
||||||
|
'OES_standard_derivatives',
|
||||||
|
'OES_texture_float',
|
||||||
|
'OES_texture_float_linear',
|
||||||
|
'OES_texture_half_float',
|
||||||
|
'OES_texture_half_float_linear',
|
||||||
|
'OES_vertex_array_object',
|
||||||
|
'WEBGL_blend_func_extended',
|
||||||
|
'WEBGL_color_buffer_float',
|
||||||
|
'WEBGL_compressed_texture_s3tc',
|
||||||
|
'WEBGL_compressed_texture_s3tc_srgb',
|
||||||
|
'WEBGL_debug_renderer_info',
|
||||||
|
'WEBGL_debug_shaders',
|
||||||
|
'WEBGL_depth_texture',
|
||||||
|
'WEBGL_draw_buffers',
|
||||||
|
'WEBGL_lose_context',
|
||||||
|
'WEBGL_multi_draw',
|
||||||
|
'WEBGL_polygon_mode',
|
||||||
|
],
|
||||||
|
wuv: 'Google Inc. (Intel)',
|
||||||
|
wur: 'ANGLE (Intel, Intel(R) UHD Graphics 730 (0x00004C8B) Direct3D11 vs_5_0 ps_5_0, D3D11)',
|
||||||
|
},
|
||||||
|
m: { compatMode: 'CSS1Compat' },
|
||||||
|
n: {
|
||||||
|
vendorSub: '',
|
||||||
|
productSub: '20030107',
|
||||||
|
vendor: 'Google Inc.',
|
||||||
|
maxTouchPoints: 1,
|
||||||
|
pdfViewerEnabled: false,
|
||||||
|
hardwareConcurrency: 12,
|
||||||
|
cookieEnabled: true,
|
||||||
|
appCodeName: 'Mozilla',
|
||||||
|
appName: 'Netscape',
|
||||||
|
appVersion: getAppVersionFromUserAgent(userAgent),
|
||||||
|
platform: 'Win32',
|
||||||
|
product: 'Gecko',
|
||||||
|
userAgent: userAgent,
|
||||||
|
language: 'zh-CN',
|
||||||
|
onLine: true,
|
||||||
|
webdriver: false,
|
||||||
|
javaEnabled: false,
|
||||||
|
deprecatedRunAdAuctionEnforcesKAnonymity: true,
|
||||||
|
deviceMemory: 8,
|
||||||
|
enumerationOrder: [
|
||||||
|
'vendorSub',
|
||||||
|
'productSub',
|
||||||
|
'vendor',
|
||||||
|
'maxTouchPoints',
|
||||||
|
'scheduling',
|
||||||
|
'userActivation',
|
||||||
|
'doNotTrack',
|
||||||
|
'geolocation',
|
||||||
|
'connection',
|
||||||
|
'plugins',
|
||||||
|
'mimeTypes',
|
||||||
|
'pdfViewerEnabled',
|
||||||
|
'webkitTemporaryStorage',
|
||||||
|
'webkitPersistentStorage',
|
||||||
|
'windowControlsOverlay',
|
||||||
|
'hardwareConcurrency',
|
||||||
|
'cookieEnabled',
|
||||||
|
'appCodeName',
|
||||||
|
'appName',
|
||||||
|
'appVersion',
|
||||||
|
'platform',
|
||||||
|
'product',
|
||||||
|
'userAgent',
|
||||||
|
'language',
|
||||||
|
'languages',
|
||||||
|
'onLine',
|
||||||
|
'webdriver',
|
||||||
|
'getGamepads',
|
||||||
|
'javaEnabled',
|
||||||
|
'sendBeacon',
|
||||||
|
'vibrate',
|
||||||
|
'deprecatedRunAdAuctionEnforcesKAnonymity',
|
||||||
|
'protectedAudience',
|
||||||
|
'bluetooth',
|
||||||
|
'storageBuckets',
|
||||||
|
'clipboard',
|
||||||
|
'credentials',
|
||||||
|
'keyboard',
|
||||||
|
'managed',
|
||||||
|
'mediaDevices',
|
||||||
|
'storage',
|
||||||
|
'serviceWorker',
|
||||||
|
'virtualKeyboard',
|
||||||
|
'wakeLock',
|
||||||
|
'deviceMemory',
|
||||||
|
'userAgentData',
|
||||||
|
'login',
|
||||||
|
'ink',
|
||||||
|
'mediaCapabilities',
|
||||||
|
'hid',
|
||||||
|
'locks',
|
||||||
|
'gpu',
|
||||||
|
'mediaSession',
|
||||||
|
'permissions',
|
||||||
|
'presentation',
|
||||||
|
'usb',
|
||||||
|
'xr',
|
||||||
|
'serial',
|
||||||
|
'adAuctionComponents',
|
||||||
|
'runAdAuction',
|
||||||
|
'canLoadAdAuctionFencedFrame',
|
||||||
|
'canShare',
|
||||||
|
'share',
|
||||||
|
'clearAppBadge',
|
||||||
|
'getBattery',
|
||||||
|
'getUserMedia',
|
||||||
|
'requestMIDIAccess',
|
||||||
|
'requestMediaKeySystemAccess',
|
||||||
|
'setAppBadge',
|
||||||
|
'webkitGetUserMedia',
|
||||||
|
'clearOriginJoinedAdInterestGroups',
|
||||||
|
'createAuctionNonce',
|
||||||
|
'joinAdInterestGroup',
|
||||||
|
'leaveAdInterestGroup',
|
||||||
|
'updateAdInterestGroups',
|
||||||
|
'deprecatedReplaceInURN',
|
||||||
|
'deprecatedURNToURL',
|
||||||
|
'getInstalledRelatedApps',
|
||||||
|
'registerProtocolHandler',
|
||||||
|
'unregisterProtocolHandler',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
p: [],
|
||||||
|
w: { devicePixelRatio: 4, screenTop: 0, screenLeft: 0 },
|
||||||
|
s: { availHeight: 740, availWidth: 360, colorDepth: 24, height: 740, width: 360, pixelDepth: 24 },
|
||||||
|
sc: {
|
||||||
|
ActiveBorder: 'rgb(0, 0, 0)',
|
||||||
|
ActiveCaption: 'rgb(0, 0, 0)',
|
||||||
|
AppWorkspace: 'rgb(255, 255, 255)',
|
||||||
|
Background: 'rgb(255, 255, 255)',
|
||||||
|
ButtonFace: 'rgb(240, 240, 240)',
|
||||||
|
ButtonHighlight: 'rgb(240, 240, 240)',
|
||||||
|
ButtonShadow: 'rgb(240, 240, 240)',
|
||||||
|
ButtonText: 'rgb(0, 0, 0)',
|
||||||
|
CaptionText: 'rgb(0, 0, 0)',
|
||||||
|
GrayText: 'rgb(109, 109, 109)',
|
||||||
|
Highlight: 'rgba(0, 86, 205, 0.8)',
|
||||||
|
HighlightText: 'rgb(255, 255, 255)',
|
||||||
|
InactiveBorder: 'rgb(0, 0, 0)',
|
||||||
|
InactiveCaption: 'rgb(255, 255, 255)',
|
||||||
|
InactiveCaptionText: 'rgb(128, 128, 128)',
|
||||||
|
InfoBackground: 'rgb(255, 255, 255)',
|
||||||
|
InfoText: 'rgb(0, 0, 0)',
|
||||||
|
Menu: 'rgb(255, 255, 255)',
|
||||||
|
MenuText: 'rgb(0, 0, 0)',
|
||||||
|
Scrollbar: 'rgb(255, 255, 255)',
|
||||||
|
ThreeDDarkShadow: 'rgb(0, 0, 0)',
|
||||||
|
ThreeDFace: 'rgb(240, 240, 240)',
|
||||||
|
ThreeDHighlight: 'rgb(0, 0, 0)',
|
||||||
|
ThreeDLightShadow: 'rgb(0, 0, 0)',
|
||||||
|
ThreeDShadow: 'rgb(0, 0, 0)',
|
||||||
|
Window: 'rgb(255, 255, 255)',
|
||||||
|
WindowFrame: 'rgb(0, 0, 0)',
|
||||||
|
WindowText: 'rgb(0, 0, 0)',
|
||||||
|
},
|
||||||
|
ss: { cookie: true, localStorage: true, sessionStorage: true, globalStorage: false, indexedDB: true },
|
||||||
|
tz: -480,
|
||||||
|
lil: '',
|
||||||
|
wil: '',
|
||||||
|
});
|
||||||
|
|
||||||
|
const a = TDEncrypt({
|
||||||
|
pin: '',
|
||||||
|
oid: '',
|
||||||
|
bizId: bizId,
|
||||||
|
fc: '',
|
||||||
|
mode: 'strict',
|
||||||
|
p: 's',
|
||||||
|
fp: 'b772d9635edebaa1a47c5a1fd086186a',
|
||||||
|
ctype: 1,
|
||||||
|
v: '3.2.1.0',
|
||||||
|
f: '3',
|
||||||
|
o: getCurrentPageUrl(url),
|
||||||
|
qs: '',
|
||||||
|
qi: '',
|
||||||
|
});
|
||||||
|
|
||||||
|
let { status, data } = await axios({
|
||||||
|
method: 'POST',
|
||||||
|
url: `https://jra.jd.com/jsTk.do?a=${encodeURIComponent(a)}`,
|
||||||
|
headers: {
|
||||||
|
'User-Agent': userAgent,
|
||||||
|
'content-type': 'application/x-www-form-urlencoded;charset=UTF-8',
|
||||||
|
},
|
||||||
|
data: qs.stringify({
|
||||||
|
d: d,
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
if (status === 200 && data.data) {
|
||||||
|
return data.data;
|
||||||
|
} else return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports.getJsToken = getJsToken;
|
||||||
|
|
2913
utils/smashUtils.js
2913
utils/smashUtils.js
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user